2017-04-10 51 views
-1

我有一個由我的用戶執行的操作的表,該表中的「電子郵件」列指定哪個用戶做了什麼。我想要做的是運行一個查詢來根據包含他的電子郵件的操作的數量找到最活躍的用戶。也就是說,我希望查詢返回我的表中最多的電子郵件。我試圖弄清楚如何做到這一點,任何想法?從「操作」表中獲取最活躍的用戶

ID EMAIL ACTION 
1 [email protected] deletion 
2 [email protected] addition 
3 [email protected] modification 
4 [email protected] deletion 
5 [email protected] deletion 
6 [email protected] deletion 
7 [email protected] deletion 
8 [email protected] deletion 

在這種情況下應返回[email protected]

+2

提示:'GROUP BY','ORDER BY'。 –

+0

我已經添加了一個樣本 – ferp

+0

在這種情況下,GROUP BY返回了具有兩個操作的人的電子郵件,這兩個操作也恰好是數據庫中的第一個ID,而不是其他人擁有3. – ferp

回答

0
select count(email) AS maxcount,email 
from table_name 
group by email 
having MAX(count(email)) 
+0

僅限代碼解答。請*解釋*你做了什麼。 –

+0

我所做的只是將電子郵件分組並計數。在having子句中返回最頻繁的電子郵件。 – Elias

+0

把它放在你的答案中,而不是作爲你的答案的評論。 –