当前位置:数据库 > Oracle >>

Oracle两个易错的地方,关于null和''的逻辑比较

Oracle两个易错的地方,关于null和''的逻辑比较
 
1.在Varchar2的格式中‘’相当于null(都不分配内存)。
 
[sql] 
select '存在' aa from dual where '' is null  
 
这句话的结果是存在的。
 
2.在Oracle中不能对null做逻辑判断,只能使用is和is not。
 
[sql] 
select '存在' aa from dual where null = null;  
[sql] 
select '存在' aa from dual where null <> null;  
[sql] 
select '存在' aa from dual where 'aa' <> null;  
[sql] 
select '存在' aa from dual where 'aa' <> '';  
 
这四句话的结果都是不存在的(注意第三、四句话);
 
[sql] 
select '存在' aa from dual where null is null;  
[sql] 
select '存在' aa from dual where 'aa' is not null;  
 
这两句话的结果是存在的;
 
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,