我对 PDO 相当陌生,但我遇到了一些可能有一个简单答案的东西。
我有一个类别编号数组,我需要在 mysql 数据库中搜索以查找具有匹配类别编号的所有项目。
我知道我已正确连接到数据库,因为我从不同的查询接收类别数组。
$category = Array ( [0] => 3259 [1] => 3617 [2] => 3257 [3] => 3258 [4] => 3450 [5] => 3452 [6] => 3478 [7] => 3479 [8] => 3480 [9] => 3448 [10] => 3449 [11] => 3451 [12] => 3456 [13] => 3454 [14] => 3455 [15] => 3459 [16] => 3460 [17] => 3458 [18] => 3453 [19] => 3461 [20] => 3462 [21] => 3457 [22] => 3463 [23] => 3447 )
现在我需要通过项目数据库来检查匹配的类别。每个项目可以有多个类别,每个类别有4位数字。多个类别用 a = 分开
$categoryResults = $conn->prepare('SELECT * FROM items WHERE category like :cats ORDER BY promotions,price ASC');
$categoryResults->execute(array(':cats' => '%'.$category.'%'));
$categoryNumber = $categoryResults->rowCount();
这就是我似乎出错的地方。使用 mysql 请求,我将使用通过数组的循环手动构建它,以获得长 sql 查询:
'Select * From items WHERE category like '%3259%' OR WHERE category LIKE '%3617%'........etc
但我确信这是使用 PDO 的优势之一。只是为了添加它,我需要结果是独一无二的。如果项目 97 属于类别 3259 和类别 3617,我只想得到一次结果。
提前致谢。