Не выполняется запрос MySQL? подскажите в чем проблема.

Рейтинг: 1Ответов: 1Опубликовано: 15.01.2015
SELECT * FROM blog WHERE Kategorie IN (4)

Вот что в базе - http://joxi.ru/xAeJKYYuMEPGry Выводит 0 записей почему то....

Если

SELECT * FROM blog WHERE Kategorie IN (4,5)

Выводит две записи ID которых - 17 и 18

Ответы

▲ 1Принят

Разумеется,

SELECT * FROM blog WHERE Kategorie IN (4)

Вывести все записи в которых Kategorie = 4, у вас таких нет.

Как я понимаю вы пытаетесь сделать возможность выбора нескольких категорий, самый простой способ сделать еще одну табличку:

 category_id post_id

А далее цеплять уже подзапросом:

SELECT * FROM blog WHERE id IN (SELECT post_id FROM categories WHERE category_id IN (4, 5, 6, 7));

Или join`ом:

  SELECT * FROM categories c
  LEFT JOIN blog b ON b.id = c.post_id
  WHERE category_id IN (4, 5, 6, 7);