2013-11-01 29 views
0

我曾與數百萬個條目(增長)是由一個現存的表:選擇一個獨特的價值和時間的總和是在一列顯示了

userid|name|etc... 

1 frank ... 
1 frank ... 
2 joe  ... 
5 sam  ... 
1 franky ... 

我需要做的是返回表作者:

place|name|total 

1 franky 3 
2 sam  1 
3 joe  1 

其中總數是SUM(用戶ID =不同的用戶ID)。

目前我在做一個查詢到SELECT DISTINCT userid from table,然後在PHP中返回值,我正在做另一個查詢返回名稱和總和(userid = userid)。

正如你可以假設,這是非常重要的,現在需要很長時間,所有的價值。有沒有辦法通過執行1個查詢來提高速度?

回答

1

我認爲你需要

SELECT @a:[email protected]+1 AS `place`, name, COUNT(userid) AS `total` 
FROM `your_table`, (SELECT @a:= 0) AS a 
GROUP BY userid 
+0

這個偉大的工程謝謝! – flip66

1
SELECT userid, COUNT(*) 
FROM  some_table 
GROUP BY userid