COALESCE:SQL Server与Oracle

时间:2017-10-25 12:34:24

标签: sql-server oracle null coalesce

我有以下脚本:

SELECT 1 
FROM Table t
WHERE COALESCE(NULL, t.ID) = NULL;

t为空。查询为Oracle返回1,它不返回SQL Server。

SQL Server的COALESCE操作的输出是什么?我们可以修复此代码以同样的方式为两个DB运行吗?

2 个答案:

答案 0 :(得分:1)

colaesce这里,你的第一个参数是NULL,这有什么意义。 就这样做:

SELECT 1 
FROM Table t
where t.ID IS NULL;

答案 1 :(得分:0)

问题不在于Coalesce功能。如果t表为空,则SQL Server不会找到并返回任何行。