SQL 中sum 是NULL的不显示出来, 怎样显示出0 还有显示出来的是乱的 怎么按我想要的排出来

SELECT sum(d.DebitAmount+d.CreditAmount) AS c
FROM PUB.GLJrnDtl d
WHERE d.SegValue1 IN ('6602290000','6602250000','6602060000','6602070000','6602350000',
'6602360000','6602010000','6602020000','6602030000','6602040000','6602050000','6602080000',
'6602090000','6602100000','6602130000','6602160000','6602170000','6602230000','6602300000','6602320000')
AND d.JEDate BETWEEN to_date('2012-01-01') AND to_date('2012-01-31')
AND d.SegValue3='0101' AND d.Description<>'费用类自动结转'
group by d.SegValue1

打印出来的只有11个 null的都不显示
而且都不是按条件的顺序排列

第1个回答  2012-03-12
isnull(d.DebitAmount,0)+isnull(d.CreditAmount,0)

SQL 中sum 是NULL的不显示出来, 怎样显示出0 还有显示出来的是乱的...
isnull(d.DebitAmount,0)+isnull(d.CreditAmount,0)

SQL分组统计把不存在的组计数为0
首先,当明细表内已经包含指标名称时,处理起来较为直接。通过`sum`等聚合函数的使用,即便忽略`null`值,只要将`null`值替换为0或使用`union`操作将空值指标结果显示出来,即可解决这一问题。然而,当明细表中不包含指标名称时,需要采取额外的策略来确保数据完整。一种可行的方案是通过`union`连接所有...

sql 将没有的字段显示出来并显示为0
insert into @t values ( '33',10)select com, sum(usd) from (select com, sum(usd) as usd from @t group by com union select '11',0 union select '22',0 union select '33',0 ) tmp group by com

sql问题在写sum语句的时候关于nvl函数
最好是: nvl(sum(aa),0)因为 sum 本身会忽略 null的值,所以sum本身,不会出现 1行有数、另一行为null 而返回null 的情况。但是由于 where 条件导致没有任何一条数据符合的情况, 此时 sum 会返回 null 所以 在最外层判断, 是合适的。

如何让SUM的返回值NULL变为0?
SELECT IIF(ISNULL(a + b),0,a + b) 这是错误的,数据库中, 10 + <NULL> = <NULL> 所以相加之前, 先把<NULL>替换为0,这个才是在ACCESS里的用法,SELECT IIF(ISNULL(字段1),0,字段1) + IIF(ISNULL(字段2),0,字段2)再试试看,下边的是SQLserver2000里的用法了,SELECT ISNULL(字段1,...

SQL语句里怎么将SUM里的空值赋值为0
通过isnull(字段 ,新值)函数实现,如果字段为空,那么给其赋值为“新值”。sql :select isnull( sum(isnull(age ,0)), 0 ) from tablename;解释:上面sql实际上做了两次判断,第一次,判断age是否为空,为空的话,就赋值为0;第二次,判断查询中的age数据都为空或者就没有记录,那么...

sql中要将显示为null的情况改为0
sum函数找不到的意思 这个改成sum(isnull(money,0));然后看看sum函数为什么找不到

SQL sum结果空值
在SQL里用isnull()函数 isnull(字段名,为空时的默认值)你这里 isnull(z_sl1,0)就可以了

SQL 中的SUM用法迷惑很
Select sum(isnull(0,SaleAmount)) As SaleAmount From #TempTb --为0 isnull(0,SaleAmount) 结果是 0 isnull(SaleAmount,0) 结果是 SaleAmount

怎么让sql sum()显示在每一行
SELECT USER_ID,sum(`CONVERT_HOUR`)FROM T_USR_EXCHANGE_HOUR group by USER_ID 你能不能把你的数据表截图看一下 (你敲的代码这么多点 我很好奇你怎么写的)

相似回答