看板 Database 關於我們 聯絡資訊
資料庫名稱:MySQL 資料庫版本: 內容/問題描述: 今天去面試遇到一題題目如下: name subject score ──────────── aaa math 90 aaa chem 75 aaa eng 70 bbb chem 85 bbb math 95 bbb eng 90 ccc eng 65 ccc chem 80 ccc math 75 請用SQL語法選出至少2科分數高於85且沒有任何一科低於75的人 小弟新手 麻煩各為求解QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.240.227.64 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1457697671.A.BB5.html ※ 編輯: littlepigred (123.240.227.64), 03/11/2016 21:25:27
smlboby: select name from table group by name 03/14 21:54
smlboby: having min(score)>=75 03/14 21:55
smlboby: and sum(case when score>85 then 1 else 0 end)>1 03/14 21:55
neo5277: 公司好像知道是那間 03/18 00:59
akiaki54: WHERE score>=75再group by / having 03/27 02:49
akiaki54: 先排除不合法 資料再分堆計算, 會不會觀念清楚一點?? 03/27 02:51
akiaki54: 效能也會好一點, WHERE執行順序高於Group BY 03/27 02:56