我的学生表以列为名称和语言。我有以下数据。
我想显示同时了解java和c的学生姓名。我是sql的新手,你能帮我怎么写这个查询吗?
答案 0 :(得分:4)
按名称分组,只选择具有两种语言的人
select name
from student
where language in ('java','c')
group by name
having count(distinct language) = 2
答案 1 :(得分:3)
SELECT l.name FROM students l
JOIN students r
ON l.name = r.name
WHERE l.language = 'java'
AND r.language = 'c';