【刷題】麪筋-sql-學生成績單裏兩門成績>80的學生名字

題目

  • 學生成績單裏兩門成績>80的學生名字

語句

  • SELECT S.name FROM Student S WHERE S.score > 80 GROUP BY S.name Having count(*)>=2;

解析

  • 返回值是學生名字:SELECT S.name
  • 查詢表是學生成績單:FROM Student S
  • 成績>80:WHERE S.score > 80
  • 從這些結果中選出有兩門或兩門以上的任意科目成績的學生:
    • 先用名字分組,後對分組後的內容進行篩選:GROUP BY S.name Having count(*)>=2

having count(*)>i

  • 沒有分組的狀況下having和Where 相似。函數

  • 有分組的時候 Where 對分組前內容過濾,having是分組後的內容進行篩選。code

  • having 裏面能夠寫聚合函數,select

  • 示例:

    • select phone from aa group by phone having count(*) > 1
    • 以phone分組,分組後,每組裏面phone出現次數大於1的 phone 會顯示出來。

END

相關文章
相關標籤/搜索