【问题标题】:Sql sum values different idsql总和值不同的id
【发布时间】:2021-12-27 17:38:54
【问题描述】:

我有一张简单的桌子。如何根据 Riclass ID 对仅 SQL 的值求和?

Riclass_Id Value
0 92751
3 56757
4 64666
5 88888

我试过这段代码,但没有用。

SELECT 
Riclass_ID
SUM (Value)
FROM Mytable
WHERE Riclass_Id= 0 and Riclass_Id= 3

【问题讨论】:

    标签: sql mysql-python


    【解决方案1】:

    Select 中删除Riclass_ID

    SELECT SUM (Value)
      FROM Mytable
     WHERE Riclass_Id in (0, 3)
    

    您将获得一条记录 - 属于 Riclass_Id 的记录的所有 Values 的总和等于 03

    【讨论】:

      【解决方案2】:

      如果你想要Riclass_ID 的总和,你需要使用group by 子句:选择要分组的字段

      如果您只想要一些Riclass_ID,则需要使用where 子句:选择要过滤的值

      使用group by 子句,您只能选择:

      • 聚合函数(此处为SUM(value),或count(*),或min/max...)
      • group by 中指定的字段
      • 常量

      selectclause AND 没有group by 子句中使用一个(或多个)聚合函数,您无法选择没有聚合的字段。

      SELECT 
          Riclass_ID,
          SUM (Value)
      FROM
          Mytable
      WHERE
          Riclass_Id in (0,3)
      GROUP BY 
          Riclass_Id
      

      【讨论】:

        猜你喜欢
        • 2012-11-28
        • 2012-10-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多