Sql 仅当总和为负数时显示总和值

Sql 仅当总和为负数时显示总和值,sql,database,ms-access,database-design,Sql,Database,Ms Access,Database Design,我在一列中求和值,但我只希望查询显示小于零的求和值。我该怎么做呢?您可以使用一个具有条件的: SELECT grouping_col, SUM(num_col) FROM mytable GROUP BY grouping_col HAVING SUM(num_col) < 0 选择分组列、总和(num列) 从mytable 分组 总和(num_col)

我在一列中求和值,但我只希望查询显示小于零的求和值。我该怎么做呢?

您可以使用一个具有条件的

SELECT   grouping_col, SUM(num_col)
FROM     mytable
GROUP BY grouping_col
HAVING   SUM(num_col) < 0
选择分组列、总和(num列)
从mytable
分组
总和(num_col)<0
在需要时尝试使用case

SELECT column1,SUM(case when numcolumn<0 then numcolumn else 0 end) as sumval
FROM mytable
group by column1

SELECT column1,SUM(numcolumn时的情况)让我们假设您有一个表名,即有两列的_表

name  balance
A      -1
B      10
A      -5
现在根据您的描述,输出将是

 name balance
   A     -6
对于此输出,查询将是

select name,sum(balance)
  from your_table
  group by name
  having sum(balance)<0
选择名称、金额(余额)
从你的桌子上
按名称分组

拥有sum(balance)1.添加一个DBMS标记2.添加一个示例,其中一个应该显示,另一个不应该显示,求和列,这样我们可以更好地了解表名以及您的确切需求。在结果集中拥有动态数量的字段有点困难,我敢打赌,这不是您真正需要的。