Если у меня есть массив, говорят, некоторый идентификатор пользователей. Как мог я делать что-то вроде этого:
$array = array(1,40,20,55,29,48);
$sql = "SELECT * FROM `myTable` WHERE `myField`='$array'";
Есть ли простой способ сделать это, я думал о цикличном выполнении через объекты массива и затем создании одного большого оператора "WHERE - OR - OR - OR", но я думал, что это могло бы быть немного медленно для больших массивов.
Используйте IN
:
$sql = "SELECT * FROM `myTable` WHERE `myField` IN (1,40,20,55,29,48)";
вы можете использовать implode (",", $ array)
, чтобы получить список вместе из массива.
Вы хотите использовать IN
:
WHERE `myfield` IN (1,40,20,55,29,48)
Используйте implode для создания строки:
$sql = "SELECT * FROM `myTable` WHERE `myField` IN (" . implode(',', $array) . ")";