main表 两个字段id、team
能不能按team中某数据出现次数由高到低排序并列出出现的次数例如id | team | count
-----------------------
2 |team2 | 10
1 |team1 | 8
3 |team3 | 5

解决方案 »

  1.   

    没太看懂,最好能列出具体数据及要求
    SELECT *,COUNT(*) AS count 
    FROM `main` 
    GROUP BY `team`,`id` 
    ORDER BY count DESC 
      

  2.   

    现在是这样
           id  team  ip  
          1 member 127.0.0.1 
          2 a 127.0.0.1 
          3 a 127.0.0.1 
          4 a 127.0.0.1 
          5 member 127.0.0.1 
          6 member 127.0.0.1 
          7 b 127.0.0.1 
          8 member 127.0.0.1 
          9 member 127.0.0.1 
          10 member 127.0.0.1 
          11 b 127.0.0.1想要这样
    team    count
    member    6
    a         3
    b         2
     
      

  3.   

    那如果同一个team中出现不同ip的话,想要什么样结果?
    SELECT `team`,COUNT(*) AS count 
    FROM `main` 
    GROUP BY `team`,`ip` 
    ORDER BY count DESC 
      

  4.   

    先试试上边这个SQL,不行再说
      

  5.   

    SELECT `team`,COUNT(*) AS count FROM `main` GROUP BY `team` ORDER BY count DESC