SELECT MAX(count) FROM visits
通过本示例查询得到了例如最活跃的页面用户。但与MAX()
我只能得到最大的count
,例如用户的最大访问量。从MAX中获取与检索列相关的数据
是否有可能,检索相关数据(其中count
是从哪里来的孔列)到选定count
值,e.g的username
?
SELECT MAX(count) FROM visits
通过本示例查询得到了例如最活跃的页面用户。但与MAX()
我只能得到最大的count
,例如用户的最大访问量。从MAX中获取与检索列相关的数据
是否有可能,检索相关数据(其中count
是从哪里来的孔列)到选定count
值,e.g的username
?
您可以使用此查询:
SELECT visits.*
FROM visits
WHERE count=(SELECT MAX(count) FROM visits)
这种查询可以返回多个行,如果多次访问共享相同的最大计数。
好主意,我会看一下这个! – Smeaven 2014-09-24 20:36:37
对于任何人谁到这里来,其RDBMS支持窗口,一个干净的解决方案是
SELECT * FROM
(SELECT visits.*, rank() AS r
OVER (ORDER BY visits.count DESC)
FROM visits) AS subquery
WHERE r=1;
这个问题是标签不具备这个MySQL。最大关系正确处理。
所以,这适用于MySQL? – Smeaven 2014-09-25 09:14:55
我不这么认为;它似乎在请求的功能列表上。我不使用MySQL。抱歉。但是,人们倾向于从搜索引擎的SO页面登陆,他们可能会使用who-knows-what。这对PostgreSQL有用,我相信SQL Server和Oracle。 – 2014-09-25 14:49:02
'ORDER BY count DESC LIMIT 1'虽然多个用户拥有相同的最大访问次数(?),但不会考虑这种情况(并且您也没有明确提及) – zerkms 2014-09-24 20:27:22