【问题标题】:selecting items count in mysql在mysql中选择项目计数
【发布时间】:2011-01-20 11:32:13
【问题描述】:

我有一张如下表,

id    ip                评级
1    192.161.0.1   3
1    192.161.0.2   4
1    192.161.0.4   3
2    192.161.0.5   1

我需要类似的结果,

id    评分    计数
1      3           2
1      4           1
2      1           1

在mysql中可以吗?

【问题讨论】:

  • 具有相同rating 的记录是否也具有相同的id

标签: mysql count items


【解决方案1】:

GROUP BY 可以同时应用于多个列。试试:

SELECT id, rating, COUNT(id) AS count
FROM yourtable
GROUP BY id, rating
ORDER BY id, rating

【讨论】:

    【解决方案2】:
    SELECT `id`, `rating`, COUNT(`id`) AS `count` FROM `table` GROUP BY `id`, `rating`.
    

    你应该更加规范化你的表格。

    【讨论】:

      【解决方案3】:

      查询应该是这样的

      SELECT id, rating, COUNT(rating) AS count
      FROM yourtable
      GROUP BY  id,rating
      ORDER BY id, rating
      

      【讨论】:

      • 感谢 harishphp、bolu 和 Tomalak Geret'kal 的快速响应。您的所有查询都运行良好。似乎很简单的查询,但让我头疼了好几个小时……感觉太糟糕了!无论如何谢谢4所有...
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-01-23
      • 1970-01-01
      • 2018-03-12
      • 1970-01-01
      • 1970-01-01
      • 2012-03-05
      • 2017-01-28
      相关资源
      最近更新 更多