您如何处理在查询中相互添加可为空的列?

gor*_*ric 5 sql-server-2005

目前,每当我编写一个添加可以包含空值的列的查询时,我都会将每个字段包装在isnullor 中coalesce,例如coalesce(score1,0) + coalesce(score2,0). 有没有更好的方法来处理这个问题,或者这是标准做法?

Eri*_*elp 8

这几乎就是你必须做的。由于 NULL + 其他任何内容都是 NULL,因此您必须将每一列包装在其自己的 isnull()、coalesce() 或 CASE 中。