如何在sql中计算count?

Man*_*nsi 0 sql t-sql sql-server aggregate sql-server-2005

我有下表:

memberid  
2
2
3
4
3
Run Code Online (Sandbox Code Playgroud)

......我希望得到以下结果:

memberid    count
2           2
3           1    ---Edit by gbn: do you mean 2?
4           1
Run Code Online (Sandbox Code Playgroud)

我试图使用:

  SELECT MemberID, 
         COUNT(MemberID) 
    FROM YourTable 
GROUP BY MemberID
Run Code Online (Sandbox Code Playgroud)

...但现在我想找到哪个记录有最大数量.IE:

memberid   count
2          2
Run Code Online (Sandbox Code Playgroud)

gbn*_*gbn 12

SELECT memberid, COUNT(*) FROM TheTable GROUP BY memberid
Run Code Online (Sandbox Code Playgroud)

虽然,它不适用于您想要的输出,因为您有两次"memberid = 3".

编辑:后期更新问题...

SELECT TOP 1 WITH TIES    --WITH TIES will pick up "joint top". 
    memberid, COUNT(*)
FROM
    TheTable 
GROUP BY 
    memberid
ORDER BY
    COUNT(*) DESC
Run Code Online (Sandbox Code Playgroud)