2016-04-22 4 views
1

SELECT, члена, если уровень 2, но не 4 или 5, где член равен 1234MySQL: выберите столбец1, где столбец2 содержит X, но не Y и Z и column1 равна 1234

id | member | level  
1 | 1234 | 2  
2 | 1234 | 4  
3 | 1234 | 5 

Так на основе приведенной выше таблицы выбора не должен возвращать член, потому что они также имеют уровень 4 и 5.

Как написать это в запросе MySQL, пожалуйста?

+0

Там нет ни одного члена 12345. Опечатка? – jarlh

+0

Извините, что это была опечатка, она должна была быть 1234. –

ответ

5

Попробуйте это:

SELECT member 
FROM mytable 
GROUP BY member 
HAVING SUM(level = 2) > 0 AND SUM(level IN (4, 5)) = 0 

Demo here

+0

Ницца код! – Tushar

+0

Спасибо, он решил мою проблему. –

Смежные вопросы