2014-10-16 100 views
0

我有這個表:得到列的最大相同值

follower | following 
2  | 1 
3  | 1 
1  | 13 
13  | 1 
2  | 1 
24  | 18 
24  | 5 
5  | 24 

它包含了不同用戶的跟隨對方的用戶名。最受關注的人是1,所以我想顯示如下輸出:「本網站上最受關注的人是1有4個關注者」。

+0

SELECT MAX(*)FROM​​ – 2014-10-16 17:28:31

+0

爲什麼標記PHP? – dbf 2014-10-16 17:42:06

回答

1

退房GROUP BY

SELECT following, COUNT(*) AS followcount 
FROM follows 
GROUP BY following 
ORDER BY followcount DESC 
LIMIT 1; 

Demo

+0

謝謝..工作! – 2014-10-16 17:47:48

+1

你的別名不應該是一個關鍵字......這是一個壞主意。 – 2014-10-16 17:54:06

+0

更新,謝謝@JohnRuddell。 – Sam 2014-10-16 17:56:44

1

喜歡的東西

SELECT following, 
     COUNT(follower) AS followercount 
FROM mytable 
GROUP BY following 
ORDER BY 2 DESC 
LIMIT 1; 

DEMO

+0

事情是我只想要被跟蹤的人的用戶名最多,不是所有的用戶 – 2014-10-16 17:30:53

+0

是不是這是什麼給你?它應該給你一個單行,返回的是跟隨者在'follow'後面的人數最多的人,以及他們追隨者的數量'followercount'。使用你的樣本數據,它應該返回'follow'和1'followercount'4 – 2014-10-16 17:31:20

+0

雖然你的樣本數據有些奇怪,因爲用戶id 2跟隨用戶id兩次 – 2014-10-16 17:33:38