2010-12-15 72 views
1

我無法找到正確的mysql函數,但正在嘗試查找單個記錄在數據庫中出現的相對於所有其他記錄的最大次數。計數最大次數記錄出現在數據庫表中

例如:

ID | .... 
================ 
    1 | .... 
    2 | .... 
    2 | .... 
    2 | .... 
    3 | .... 
    3 | .... 

對於我試圖達到什麼樣的查詢提供最佳回報是3(1計數1,2數爲3,3計數2,使返回的最大計數任何id)。

回答

3

無法直接嵌套,否則您將得到最大分組數。改爲嵌套選擇。

select max(c) from (
    select 
    count(*) c 
    group by 
    .. whatever ... 
) x 
+0

'COUNT(*)'由分組'id'將返回一個行數等於ID號的數目的。最高會給你最大的。這是你想要的,是嗎? – Donnie 2010-12-15 18:20:43

+0

忘記我說的話,我是一個白癡,在我的實際查詢中有錯誤的字段名稱。謝謝! – JM4 2010-12-15 18:21:31

1
SELECT MAX(MAX_COUNT) FROM (SELECT COUNT(COLUMN_NAME) AS MAX_COUNT FROM TABLE_NAME GROUP BY COLUMN_NAME)