ANSI-92 SQL任务的空值与NULL
比较评价为“falsy”,例如:因为NULL
不能像比拟比较与SQL
SELECT * FROM table WHERE field = NULL
SELECT * FROM table WHERE field != NULL
威尔都不返回行。相反,谓语IS NULL
和IS NOT NULL
必须改用:
SELECT * FROM table WHERE field IS NULL
SELECT * FROM table WHERE field IS NOT NULL
研究表明我甲骨文和PostgreSQL,MySQL和SQLite的所有支持ANSI语法。添加到列表DB2和Firebird。
除了关闭ANSI_NULLS
的SQL Server以外,还有哪些其他RDBMS支持非ANSI语法?
尽管整个空字符串= NULL
乱七八糟。
Oracle(这里是11g)完全按照你在这两种情况下的描述。 –