在SQL Server中,NULL不等于NULL。(参见为什么在SQL Server中,NULL = NULL 的结果为假)
那么为什么以下代码返回单个NULL?
CREATE TABLE #TEMP1
(ID INT)
INSERT INTO #TEMP1
SELECT NULL
UNION ALL
SELECT NULL
SELECT DISTINCT ID FROM #TEMP1
DROP TABLE #TEMP1
ID
------
NULL
我预期
ID
------
NULL
NULL