【问题标题】:Counting the number of appearances of each id in a table sql db2统计表sql db2中每个id出现的次数
【发布时间】:2014-10-16 23:15:25
【问题描述】:

我的 sql 数据库中有两个表

产品:PID(PK), PName 销售:PID(FK)、数量、价格

我只想实现一个查询来计算每个 PID 在销售表中重复了多少次

我试过这段代码:

> select count(PID) from sales where PID = 'P01';

但我必须插入一个特定的 ID 号才能计数。我想要所有ID的问题。 我希望有人可以在这方面帮助 pe。 谢谢

【问题讨论】:

    标签: sql database select db2


    【解决方案1】:

    您需要按PID 分组并计算每个组内的出现次数:

    select 
        PID, 
        count(*) as PIDCount
    from 
        sales 
    group by 
        PID;
    

    【讨论】:

    • 哦,我完全忘记了group by statement,非常感谢。
    • 这个问题被标记为db2,但是如果在DB2上执行,解决方案中显示的SQL语句会失败。 (ANSI SQL 要求您将表达式写为count(*) as PIDCount
    • 谢谢,我已经更新了。我更喜欢非 ANSI 'Columnname' = value(使用支持它的 RDBMS 时),因为它在扫描左对齐的长列列表时更具可读性。
    猜你喜欢
    • 1970-01-01
    • 2021-04-17
    • 1970-01-01
    • 1970-01-01
    • 2014-08-02
    • 1970-01-01
    • 2016-07-16
    • 1970-01-01
    • 2014-01-17
    相关资源
    最近更新 更多