SET ANSI_NULLS ON/OFF 功能用法
SET ANSI_NULLS ON
SET ANSI_NULLS OFF
指定在 SQL Server 中與 Null 值一起使用時,等於 (=) 和不等於 (<>) 比較運算子採用的 ISO 標準行為。
布林運算式 | SET ANSI_NULLS ON | SET ANSI_NULLS OFF |
---|---|---|
NULL = NULL | UNKNOWN | TRUE |
1 = NULL | UNKNOWN | FALSE |
NULL <> NULL | UNKNOWN | FALSE |
1 <> NULL | UNKNOWN | TRUE |
NULL > NULL | UNKNOWN | UNKNOWN |
1 > NULL | UNKNOWN | UNKNOWN |
NULL IS NULL | TRUE | TRUE |
1 IS NULL | FALSE | FALSE |
NULL IS NOT NULL | FALSE | FALSE |
1 IS NOT NULL | TRUE | TRUE |
補充:
- ANSI SQL:
- SQL在1986年成為美國國家標準學會(ANSI)的一項標準,在1987年成為國際標準化組織(ISO)的標準。
- ANSI 所公布的SQL標準,陸陸續續有:SQL-86, SQL-89, SQL-92, 並在1993(SQL3), 2003, 2008,2011, 2016 有修訂推出。
- ANSI對SQL標準演進過程的一些說明。鏈結
- T-SQL:
- Transact-SQL (T-SQL),是在Microsoft SQL Server和Sybase SQL Server上,對ANSI SQL標準的實作。
- 目前Microsoft實作的Transact-SQL可支援到ANSI SQL-92標準。
參考: