作者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