Допустим, у меня есть таблица с двумя столбцами: имя и настроение . Строка содержит имя человека и его настроение, если у них несколько настроений, то в БД хранятся несколько рядов.
Например, в базе данных находится Джон, который счастлив, взволнован и горд.
Это представляется как
John Happy
John Excited
John Proud
Что я хочу сделать, это выбрать имя, основываясь на нескольких встречаемых настроениях. Похоже на СОЮЗ:
SELECT name WHERE mood=Happy
UNION
SELECT name WHERE mood=Excited
UNION
SELECT name WHERE mood=Proud
Однако использование вышеприведенного объединения приведет к:
John
John
John
Объединение всех приведет к единственному результату Джона, но также выберет любые имена, которые соответствуют только одному из запросов.
Я могу придумать несколько алгоритмов, которые бы использовали каждый отдельный ресурс mysql_result (я использую PHP) и искали соответствующие результаты, но я хочу знать, облегчает ли это MySQL.
Я понимаю, что вышесказанное является довольно смутным обобщением, само собой разумеется, что моя настоящая программа намного сложнее, и я немного обдумал этот вопрос, пожалуйста, не стесняйтесь задавать вопросы.