我刷新我的SQL與在線斯坦福數據庫類練習,發現here。這裏的問題是:「找同學誰只是有朋友在同一檔次 的名稱和等級每 級內回到依等級排序的結果,然後按名稱。」簡單的SQL問題與子查詢
我們有一個highschooler
表,用屬性name
,grade
,id
。此外,likes
表具有屬性id1
和id2
。 id1
和id2
在likes
對應於id
在highschooler
。
基於這個問題部分,我可以告訴我需要使用子查詢,但我不知道在哪裏。我應該如何處理這個問題?目前建議的解決方案都不起作用。
這裏是我當前的SQL語句,也就是工作不正常(忽略排序):
select distinct
student1.id,
student1.name,
student1.grade
from
highschooler student1,
highschooler student2,
friend
where not exists (select *
from friend
where student1.id = id1
and student2.id = id2
and student1.grade = student2.grade
and student1.id <> student2.id);
你可以把它想象成:「找到不存在的學生的姓名和成績 - 一個不同年級的朋友。」 –