2017-03-06 18 views
0

我有与此字段Oracle数据库11g <>运营为CHAR(1个字节),

"SYSTEM_HIDDEN" CHAR(1 BYTE), 

我有一个行ID(26119)与此字段的NULL值Oracle表。但是,当我查询此行与这一说法,不返回行:

SELECT * FROM T_BOOK WHERE id =26119 and SYSTEM_HIDDEN <> 'T' 

在Oracle数据库11g企业版发布11.2.0.4.0 - 64位生产

+0

https://docs.oracle.com/cd/B19306_01/server.102/b14200/sql_elements005.htm,escpecially部 “空值与比较条件” – dlatikay

回答

0

NULL值在所有比较特殊的行为(除IS NULLIS NOT NULL),比较NULL=<>><>=<=总是返回NULL最终表现得像FALSE在对于不选择任何行。

使用(SYSTEM_HIDDEN <> 'T' or SYSTEM_HIDDEN IS NULL)NVL(SYSTEM_HIDDEN, 'F') <> 'T'代替

相关问题