SET ANSI_NULLS无效

时间:2014-12-20 19:30:11

标签: sql-server

SET ANSI_NULLS OFF

SELECT * 
FROM (SELECT NULL AS ID, 'XYZ' AS NAME) TABLE1
INNER JOIN (SELECT NULL AS ID, 'ABC' AS NAME) TABLE2 ON TABLE1.ID = TABLE2.ID

设置ANSII_NULLS OFF后,我的输出无法正确

1 个答案:

答案 0 :(得分:1)

您获得了正确的输出。你只是没有得到你期望的输出。

The documentation非常明确ANSI_NULLS设置仅适用于NULL的字面比较。从该页面:

  

SET ANSI_NULLS ON仅在比较的其中一个操作数是NULL或文字NULL的变量时才会影响比较。如果比较的两侧都是列或复合表达式,则该设置不会影响比较。