sql将同一个表中的两列Int数据相加,有些数据是空的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql将同一个表中的两列Int数据相加,有些数据是空的相关的知识,希望对你有一定的参考价值。

不能这样加!

有些数据为null吧,null+任何值=null

如这句话就不行

update HY_MYGGCYSWCQKB set HY_MYGGCYSWCQKB.Sj_By_Sr=HY_MYGGCYSWCQKB.Sj_By_Sr+HY_MYGGCYSWCQKB.Sj_By_Sr_Tz-HY_MYGGCYSWCQKB.Sj_By_Sr_Tj;

如果有一列未Null,相加结果就为null。

正常来说可以,

SELECT
total + money
FROM


就可以了。
但是:
有些数据是空的情况下, 需要根据不同的数据库, 用不用的函数
也就是 如果 数据为空, 那么按照 0 来计算
Oracle 或者 DB2 使用 NVL( total , 0) + NVL( money, 0)
SQL Server 使用 ISNULL( total , 0) + ISNULL( money, 0)
mysql 或者 SQLite 使用 IFNULL( total , 0) + IFNULL( money, 0)

以上是关于sql将同一个表中的两列Int数据相加,有些数据是空的的主要内容,如果未能解决你的问题,请参考以下文章

将两个表中的列相加到具有两列的第三个表中

合并数据透视表中的两列

怎样一个表中的2个查询结果合并到一个表中的两列

从表中的两列中选择相同的数据,并使用一条sql语句显示所有数据

比较数据透视表中计算字段中的两列错误

pandas使用dataframe中的两列时间对象数据列作差生成时间差数据列指定时间数据列相加timedelta数据列实现数据偏移(向前偏移时间增加)