Не могу составить Select запрос с точным перечислением категорий

Статус
В этой теме нельзя размещать новые ответы.

Tarasishe

Постоялец
Регистрация
26 Апр 2008
Сообщения
190
Реакции
142
Собственное есть DLE в нем таблица Dle_post ... мне необходимо выбрать заголовки - title статей, которые опубликованы в определенных категориях
Как составить запрос ??
Код:
SELECT title FROM " . USERPREFIX . "_post WHERE category [B]???[/B] AND approve ='1'
Как перечислить категории, мне необходимо четко указать категория 1,2,6
Возможно как то задействовать таблицу category ?? там есть эти же ID 1,2,6 ...
Смог родить только < '6', но это затрагивает все категории с 1 по 6ю... а это не подходит :(
 
Код:
 WHERE category IN (1,2,6)
или, если у тебя пятый мускул и поддерживаются вложенные запросы,
Код:
 WHERE category IN (SELECT id FROM dle_categories ...)
 
  • Заблокирован
  • #3
Смог родить только < '6', но это затрагивает все категории с 1 по 6ю... а это не подходит
Код:
SELECT title FROM " . USERPREFIX . "_post WHERE category ='1'  AND category ='2'  AND category ='6'  AND approve ='1'
А так?
 
Вариант постом выше компактнее получается, особенно в большом количестве категорий
 
Код:
SELECT title FROM " . USERPREFIX . "_post WHERE category ='1'  AND category ='2'  AND category ='6'  AND approve ='1'
А так?
у вас небольшая ошибка

PHP:
SELECT title FROM " . USERPREFIX . "_post 
WHERE   approve ='1'  
      AND  (category ='1'  OR  category ='2'  OR  category ='6' )
-----------
да и числа брать в кавычки не стоит
-----------
Agler, зачем писать очевидные вещи? :confused:
 
Последний вариант с ходу подошел, моя ошибка оказывается была в том, что я в скобки не брал OR ...
 
всё равно вариант с
PHP:
WHERE   approve ='1'  
      AND  (category in ('1', '2', '6'))
в данном случае является более логичным. да и смотрится лучше
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху