Задавайте вопросы, мы ответим
Вы не зашли.
В очередной раз обращаюсь за помощью.
Уже несколько часов пробую и ищу, но без результата.
Ситуация такая: в блоге есть посты (таблица item) и категории (таблица cat). Один пост может принадлежать к нескольким категориям.
Взаимосвязь постов и категорий происходит через таблицу cat_dep
item
| id | title |
-------------------
| 1 | item 1 |
| 2 | item 2 |
cat
| id | title |
-------------------
| 1 | categorie 1 |
| 2 | categorie 2 |
| 3 | categorie 3 |
| 4 | categorie 4 |
cat_dep
| id | cat_id | item_id |
----------------------
| 1 | 1 | 1 |
| 2 | 2 | 1 |
| 3 | 1 | 2 |
| 4 | 2 | 2 |
| 5 | 3 | 2 |
| 6 | 4 | 2 |
Необходимо сделать запрос, чтобы на выходе была такая таблица:
| id | title |
-------------------
| 1 | categorie 3 |
| 2 | categorie 4 |
т.е. выбрать все категории, к которым НЕ принадлежит item 1
Следующий запрос не даёт необходимого результата:
Неактивен
Самый простой вариант: select * from cat WHERE id not in (select cat_id from cat_dep where item_id=1);
Неактивен
Спасибо.
Работает.
Неактивен