我已經在網上搜索了答案,如果我錯過了一些明顯的東西,我會很感激鏈接。否則,我會感謝你的直接幫助。這是我第一次嘗試這樣的問題。
我有以下疑問:
SELECT * FROM `dice_t` WHERE qty IN (:qty) AND opacity IN (:opacity) AND color IN (:color)
我正在向其饋送以下陣列:
Array
(
[qty] => 1,2
[opacity] => 3
[color] => 467,1007
)
在phpMyAdmin中(當我輸入值時),它可以完美地工作(檢索163行),但在我的腳本中,它只檢索114行,只使用每個字段中的第一個值(即數量:1;不透明度:3;顏色:467)。我通過僅使用phpMyAdmin中的那些值運行查詢來驗證這一點。
我的代碼如下所示:
$statement = $dbConn->prepare($sql);
$statement->execute($queryData);
$result = $statement->fetchAll(PDO::FETCH_ASSOC);
當我打印$sql和$queryData的值時,我會得到上面前兩個代碼塊中列出的值。
這些字段都是整數。我嘗試用單引號搜索這些值,但出現了一個錯誤。
我不知道我做錯了什么。
變量:qty作為Strinf處理,因此您有'1,1'
所以你必須使用
FIND_IN_SET
在這個線程中,我可以用其他方法將數組綁定到in()條件嗎?