作者carolia (cyan)
看板Database
標題[SQL ] 請問如何找出count後欄位中的最大值?
時間Fri Apr 17 21:26:51 2009
使用MySql v5
目前select出的表大致如下...
resource_name count(resource_id)
Book1 20
Room3 18
Room1 18
DVD 17
Lab3 10
要如何指定出函數count後的最大值,也就是只顯示以下即可?
resource_name count(resource_id)
Book1 20
目前我的做法是order by count(resource_id) desc limit 1 來取第一個最大值
效率感覺不是很好(只是要最大值卻還是要全部排序...還好資料不多)
並且如果說count有值有兩個的話,是希望兩個都能取到
以我的作法只能取到其中一個
e.g. 若改取前三大的count值用order by count(resource_id) desc limit 3
出現下面
resource_name count(resource_id)
Book1 20
Room3 18
Room1 18
但是是希望DVD也能出現.....也就是希望為
resource_name count(resource_id)
Book1 20
Room3 18
Room1 18
DVD 17
請問有甚麼更好的作法呢?
新手接觸的語法不多...懇請指點~
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.219.244.22
1F:推 evernever:一次選三欄試試看select resource_name, count(), max() 04/17 22:19
2F:→ carolia:直接max()函數裡面放count()函數我跑不出來哩...還是要 04/17 22:44
3F:→ carolia:要再加些甚麼? (或我會錯意了...) 04/17 22:52
4F:推 coolsprite:巢狀查詢 04/18 03:09
5F:推 coolsprite:= ="當我沒說~試不出來 04/18 04:14