Я некоторое время ломал голову над этим, поэтому решил, что перепрошу стек (Примечание: я новичок в SQL, пытающийся выучить больше SQL, поэтому будьте внимательны и объяснительны):
У меня есть одна таблица sql, которая выглядит так, называемая "posts":
id | user
--------------------------------
0 | tim
1 | tim
2 | bob
И еще одна, называемая "tags", которая хранит теги в сообщениях (в "posts""таблица) в тексте:
id | postID | tag
--------------------------------
0 | 0 | php
1 | 2 | php
2 | 0 | mysql
3 | 1 | mysql
4 | 1 | sql
5 | 3 | perl
(Для пояснения, концепция, в которой: id = 0 помечена как php, mysql; id = 1 помечена как sql, mysql; id = 2 помечена как php; id =3 помечено как perl.)
Как можно написать оператор WHERE, чтобы получить сообщения с тегом x, но не y (x и y будут определены php)?
Например, как я могу получить все сообщения с тегом mysql, но не с php?
РЕДАКТИРОВАТЬ
Не могли бы вы также объяснить, как добавить несколько тегов для поиска (например, получить все тегированные mysql и рекурсию?)но не php)