|
|
|
| Здравствуйте, уважаемые !
Подскажите, пожалуйста, можно ли как-то
выбрать все строки таблицы, id которых
может быть в массиве ?
Таблица:
| id | name |
| 1 | bla bla |
| 2 | bla bla |
...
| 12 | bla bla |
Массив:
Array ([0]=>1[1]=>2[2]=>3[3]=>4[4]=>5[5]=>6[6]=>7[7]=>8[8]=>9[9]=>10[10]=>11[11]=>12);
Спасибо! | |
|
|
|
|
|
|
|
для: mehelson
(28.07.2008 в 10:08)
| | Да...
Размер массива может быть любой. | |
|
|
|
|
|
|
|
для: mehelson
(28.07.2008 в 10:32)
| |
$array = array(2, 3, 5, 7);
$list = implode(',',array_map('intval', $array));
$sql = "SELECT * FROM tbl WHERE id IN ($list)";
|
>Да...
>Размер массива может быть любой.
Тогда точно нельзя.
У буфера запроса SQL существуют ограничения на размер. | |
|
|
|
|
|
|
|
для: Trianon
(28.07.2008 в 11:14)
| | Примного Вам благодарен!
Размер массива в пределах разумного :)
Не так выразился, имеется в виду не всегда по порядку, может быть меньше, может быть чуть больше | |
|
|
|
|
|
|
|
для: Trianon
(28.07.2008 в 11:14)
| | Но выдает ошибку:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ID(1,2,3,4,5,6,7,8,9,10,11,12)' at line 1
MySQL v.5.0.24a на всякий случай | |
|
|
|
|
|
|
|
для: mehelson
(28.07.2008 в 12:18)
| | я там опечатался. WHERE id IN ($list) | |
|
|
|
|
|
|
|
для: Trianon
(28.07.2008 в 12:55)
| | Спасибо еще раз! | |
|
|
|