【问题标题】:SQL query to count number of different valuesSQL查询来计算不同值的数量
【发布时间】:2011-03-09 22:44:07
【问题描述】:
x y

A P
A P
B P
B Q

嗨,我需要一个查询来返回 x 的所有唯一值,有多少个不同的 y。所以对于上面的数据,它会返回:

x count
A 1
B 2

谢谢

【问题讨论】:

    标签: mysql sql


    【解决方案1】:

    使用 GROUP BY 和 COUNT(DISTINCT ...):

    SELECT x, COUNT(DISTINCT y) AS cnt_y
    FROM yourtable
    GROUP BY x
    

    结果:

    x cnt_y 1 乙二

    测试数据:

    CREATE TABLE yourtable (x VARCHAR(100) NOT NULL, y VARCHAR(100) NOT NULL); 插入您的表(x,y)值 ('A', 'P'), ('A', 'P'), ('B', 'P'), ('B', 'Q');

    【讨论】:

      【解决方案2】:

      这是GROUP BY 语句的简单案例。

      这里有一些代码:

      SELECT x, COUNT(DISTINCT y) AS y
      FROM table
      GROUP BY x;
      

      【讨论】:

        猜你喜欢
        • 2021-02-26
        • 2012-11-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-09-02
        • 2023-03-20
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多