Oracle Database 11g<> Oracle for CHAR(1 BYTE)的操作,

时间:2017-03-06 09:40:16

标签: oracle oracle11g

我有一个带有此字段的oracle表

"SYSTEM_HIDDEN" CHAR(1 BYTE), 

我有一个行id(26119),该字段的值为NULL。但是当我使用此语句查询此行时,不返回任何行:

SELECT * FROM T_BOOK WHERE id =26119 and SYSTEM_HIDDEN <> 'T'
Oracle Database 11g企业版11.2.0.4.0版中的

- 64位生产

1 个答案:

答案 0 :(得分:0)

NULL值在所有比较中都很特殊(IS NULLIS NOT NULL除外),将NULL=<>,{{进行比较1}},><>=始终返回<=,最终的行为与NULL相似,不会选择任何行。

使用FALSE或     而是(SYSTEM_HIDDEN <> 'T' or SYSTEM_HIDDEN IS NULL)