[SQL ] 資料選取問題

作者: littlepigred (小豬鴻)   2016-03-11 20:01:09
資料庫名稱: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
作者: smlboby (波比)   2016-03-14 21:54:00
select name from table group by namehaving min(score)>=75and sum(case when score>85 then 1 else 0 end)>1
作者: neo5277 (I am an agent of chaos)   2016-03-18 00:59:00
公司好像知道是那間
作者: akiaki54 (喝酒做愛不談戀愛)   2016-03-27 02:49:00
WHERE score>=75再group by / having先排除不合法 資料再分堆計算, 會不會觀念清楚一點??效能也會好一點, WHERE執行順序高於Group BY

Links booklink

Contact Us: admin [ a t ] ucptt.com