2013-08-29 41 views
-1

如何在MySQL中的兩個數據庫表的列中返回重複值的計數?假設第1列的行包含值'a',第2列的行包含值'b',第1列的另一行包含值'a',第2列的行包含值'b',那麼我希望計數返回爲2.通過分區不起作用。在mysql中有多列的列中重複值的計數

回答

1

你想要做一個簡單的聚合?

select col1, col2, count(*) 
from t 
group by col1, col2; 

或者,你想這個價值附加到每一行:

select t.*, tsum.cnt 
from t join 
    (select col1, col2, count(*) as cnt 
     from t 
     group by col1, col2 
    ) tsum 
    on tsum.col1 = t.col1 and tsum.col2 = t.col2; 
+0

簡單聚合正是我需要的,但更我只需要最大計數值將返回且僅當它大於一些值 – carefree

+0

@carefree。 。 。然後添加'count by count(*)limit 1'來獲得最高的計數。 –

+0

它是返回最低計數,任何想法獲得最高計數? – carefree