Пожалуйста, дайте мне советы, как построить запрос select. У меня есть таблица table
с полями type
и obj_id
. Я хочу, чтобы выбрать все записи в согласовании со следующим массивом:Выберите несколько записей по одному запросу
$arr = array(
0 => array('type' => 1, 'obj_id' => 5),
1 => array('type' => 3, 'obj_id' => 15),
2 => array('type' => 4, 'obj_id' => 14),
3 => array('type' => 12, 'obj_id' => 17),
);
Я хочу, чтобы выбрать необходимые строки с помощью одного запроса, это реально? Smth как
select * from `table` where type in (1,3,4,12) and obj_id in (5,15,14,17)
Но этот запрос возвращает также записи с типом = 3 и OBJ_ID = 14, и, например, типа = 1 и OBJ_ID = 17. P.S. модераторы, пожалуйста, исправьте мой заголовок, я не знаю, как описать мой вопрос.
update: array $arr could contain more than 500 elems.
Длина моего массива $ arr может быть больше, чем 50-200 элементов. Итак, если это оптимальное решение, используйте свой запрос? – user52005
Если у вас есть составной индекс в 'type' и' obj_id', он должен работать достаточно хорошо. Но я должен признать, что это звучит как странный запрос. –