![]() |
#1 |
Особый статус
|
![]() Чего-то все никак не могу родить запрос, выдающий массив строк... Вкратце: есть список id, нужно достать из таблицы table строки, включающие эти id. Что-то типа
Код:
SELECT * FROM `table` WHERE id=(1 AND 11 AND 77) ![]() В общем, камрады, помогите сконструировать запрос! |
![]() |
![]() |
![]() |
#2 |
Новичок
|
![]() список id в массиве? впринципе запрос почти пральный, только вместо AND надо заюзать OR
Если запросов будет много и разные иды будут подставляться, то можно циклом автоматизировать составление вот этого куска строки: Код:
1 AND 11 AND 77 Последний раз редактировалось stasilok; 05.01.2010 в 05:25. Причина: о_О |
![]() |
![]() |
![]() |
#3 |
Особый статус
|
![]() Выдает то же, что и при AND, а именно: строку с id 1.
|
![]() |
![]() |
![]() |
#4 |
Специалист
|
![]() на примере моей таблицы
Код:
SELECT * FROM `vdk_articles` WHERE `ID` IN ( 80, 81, 82 ) LIMIT 0 , 30
__________________
Не получается воткнуть код на сайт? Могу помочь. ася: 858-368. Рефералам бесплатно |
![]() |
![]() |
![]() |
#5 | |
Мастер
Регистрация: 17.03.2008
Сообщений: 638
Вес репутации: 252
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() правильно, надо использовать оператор IN, BETWEEN min AND max (если значения входят в диапазон) или OR (например WHERE `id`= 1 OR `id`=11 OR `id`=77)
(1 AND 11 AND 77) выдает 1, т.к. все значения не 0 или NULL Цитата:
|
|
![]() |
![]() |
![]() |
#7 |
Магистр
Регистрация: 04.12.2007
Сообщений: 3,682
Вес репутации: 431
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() Все "битвины" и "ины" теоритически жрут нехило мощность сервера.
Поэтому если список айдишников невелик- ну например 10-20 (а по хорошему- неважно сколько, важно оттестить и посмотреть на каких количествах сервер начнет зарывацца) - я бы сделал просто классический запрос на выборку строк по известным айдишникам: SELECT * FROM table WHERE ( (id=1) OR (id=12) OR (id=23) OR ... (id=89) ) Если же массив айдишников здоровенный- сотни или тысячи, то наверное надо мутить чтото другое.. Если надо- можно подумать что именно.. Если есть какието облегчающие условия- например, известно, что все айдишники идут попорядку и неубыват, или какието еще ограничения на ряд - то это можно с успехом использовать при построении запроса.
__________________
|
![]() |
![]() |
![]() |
#10 |
Особый статус
|
![]() На серче помогли:
WHERE id IN (1,10,100) // аддед ID по идее должны идти по порядку, и их может быть неизвестное множество (от 0 до, скажем, 100-200-500), ибо это комментарии пользователей к статье, посту, картинке, видео... Последний раз редактировалось Ufaweb; 06.01.2010 в 02:08. |
![]() |
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите правильно составить заявку в ЯК | doom_seller | Курилка | 9 | 26.10.2009 23:13 |
запрос в mysql | Zergalius | Разработка и сопровождение сайтов | 22 | 14.07.2009 13:27 |
Помогите составить SQL запрос? | Fredy314 | Разработка и сопровождение сайтов | 7 | 02.06.2009 09:19 |
помогите с MySQL | 10012003 | Разработка и сопровождение сайтов | 21 | 19.05.2009 12:22 |
Запрос к MySQL | Ulf | Разработка и сопровождение сайтов | 13 | 12.05.2009 00:26 |
Часовой пояс GMT +3, время: 10:33.