Not in 条件不考虑 Oracle 中的 null
Not in condition does not consider null in Oracle
我的结果集如下
reg_no name grade
--------- ------- ------
1112 Muthu A
1113 Vikki B
1114 Murali C
1115 Shankar null
我已经检查了条件不在
select * from grades where grade not in ('B','C')
但是在执行查询时,我只有一条 A 级记录。我没有得到第四行。我坚持这个。如何检查这个。
检查 null 是否存在的唯一正确方法是 IS NULL 和 IS NOT NULL
select * from grades where grade not in ('B','C') or grade is null
这样检查
select * from grades where nvl(grade,'?') not in ('B','C');
但是如果存在的话,这个适当的不能在成绩上使用索引。
我的结果集如下
reg_no name grade
--------- ------- ------
1112 Muthu A
1113 Vikki B
1114 Murali C
1115 Shankar null
我已经检查了条件不在
select * from grades where grade not in ('B','C')
但是在执行查询时,我只有一条 A 级记录。我没有得到第四行。我坚持这个。如何检查这个。
检查 null 是否存在的唯一正确方法是 IS NULL 和 IS NOT NULL
select * from grades where grade not in ('B','C') or grade is null
这样检查
select * from grades where nvl(grade,'?') not in ('B','C');
但是如果存在的话,这个适当的不能在成绩上使用索引。