我有一个表格,向我显示我的用户的下载报告。
该表如下所示:
╔═══╦════════════╦═════════════╗
║ ║ url ║ user ║
╠═══╬════════════╬═════════════╣
║ 1 ║ Bla ║ 1 ║
║ 2 ║ Bla Bla ║ 1 ║
║ 3 ║ Bla Bla Bla║ 1 ║
║ 4 ║ Bla2 ║ 2 ║
╚═══╩════════════╩═════════════╝
如果要选择下载URL
Bla
的用户,请执行以下操作:SELECT `user` FROM `links` WHERE `url` = 'Bla'
但是我想选择下载
Bla
并下载Bla Bla
的用户。我怎样才能做到这一点?
谢谢,对不起我的英语。
最佳答案
您可以将WHERE
子句与GROUP BY
和HAVING
组合使用以获取结果:
select user
from yourtable
where url in ('Bla', 'Bla Bla')
group by user
having count(distinct url) = 2;
见SQL Fiddle with Demo
关于mysql - 多行的SQL条件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20890308/