为什么80%的码农都做不了架构师?>>>   

最近在写pl/sql package时,发现了原来使用null时的一些问题, 下面是我的理解,可能有不对的地方,欢迎大家指正。

SQL> set serveroutput on
SQL> begin
  2    if null <> 1 then
  3      dbms_output.put_line('aaaaaa');
  4    else
  5      dbms_output.put_line('bbbbbb');
  6    end if;
  7  end;
  8  /
bbbbbb

SQL> begin
  2    if not null <> 1 then
  3      dbms_output.put_line('aaaaaa');
  4    else
  5      dbms_output.put_line('bbbbbb');
  6    end if;
  7  end;
  8  /
bbbbbb

从以上可以看到,null和实际数值比较时,不论=或<>返回的都是false,即使前边加上not,返回的也是false.
所以将来写sql语句时,碰到使用null时,在不确定的情况下,尽量使用is 或 is not这样的语法,哪怕代码繁琐些。

不知道理解的是否真确,欢迎大家指正。

转载于:https://my.oschina.net/luqin/blog/92263

oracle sql语句中有关null使用的一点理解相关推荐

  1. oracle sql语句中包含‘’ 的解决方法

    oracle sql语句中包含'&' 的解决方法 参考文章: (1)oracle sql语句中包含'&' 的解决方法 (2)https://www.cnblogs.com/hm1990 ...

  2. sql 语句中的 NULL值

    今天写了这样的代码 DECLARE @atr NVARCHAR(20) SET @atr = NULL IF(@atr = NULL) BEGIN   PRINT 1 END     原本是想打印出1 ...

  3. oracle sql语句中like %参数%的用法

    oracle sql语句中like %参数%的用法,在网上找了很久没找到类似的帖子,因此分享一下我的收获,希望对看到的人有帮助 今天在处理oracle数据库数据merge的时候遇到一个问题: 在mer ...

  4. oracle查询语句 switch,ORACLE SQL语句中的“SWITCH语句”函数DECODE

    下面这个例子介绍ORACLE SQL Functions对DECODE函数的用法,引自官方文档 SELECT product_id,        DECODE (warehouse_id, 1, ' ...

  5. oracle sql 语句中where条件中 1=1 是什么意思

    是为了后面附加and ...方便程序逻辑处理用的, 要不然你就得稍微复杂一点儿处理: 有where条件... 没有where条件... 1=1 是永恒成立的,意思无条件的,也就是说在SQL语句里有没有 ...

  6. oracle revers函数,Oracle SQL 语句中对Like的优化(引用reverse函数)

    重点关注reverse 用法:reverse(字段)like reverse(属性值); 实际例子体现出得查询效率: select Max(Ana_Rqb_Date) from Ana_Rqb whe ...

  7. oracle sql的正则表达式,Oracle SQL 语句中正则表达式的应用

    REGEXP_LIKE(匹配) REGEXP_INSTR (包含) REGEXP_REPLACE(替换) REGEXP_SUBSTR(提取) 如 手机号码的表达式: ^[1]{1}[35]{1}[[: ...

  8. Oracle+sql+取年度,oracle SQL语句取本周本月本年的数据

    --国内从周一到周日 国外是周日到周六 select to_char(sysdate-1,'D') from dual;--取国内的星期几 去掉减一取国外的星期 --取本周时间内的数据 select ...

  9. oracle sum函数返回空,关于SQL语句中SUM函数返回NULL的解决办法

    SUM 是SQL语句中的标准求和函数,如果没有符合条件的记录,那么SUM函数会返回NULL. 但多数情况下,我们希望如果没有符合条件记录的情况下,我们希望它返回0,而不是NULL,那么我们可以使用例如 ...

最新文章

  1. 对输入框以及选择框集体的数据检验
  2. Functional Programming Contest - September'14
  3. MySQL数据库的创建
  4. springboot在工具类中添加service的方法,显示为空的解决方案
  5. 【转】Linux 前后台作业切换及脱机管理
  6. ProtoBuffer由.proto文件生成.cc/.h
  7. hibernate---一对一单项外键关联
  8. 机器学习(六)——优化器
  9. 工作和人工智能的未来
  10. 项目经理在项目各阶段的工作重点
  11. GraphQL入门2
  12. servlet实现新闻控制
  13. python文本框与数据库的关联_Python 基于python+mysql浅谈redis缓存设计与数据库关联数据处理...
  14. mysql_分组查询
  15. 下载:简体中文版Live Messenger 8.1 Beta
  16. SEO黑帽技术 - 蜘蛛池原理
  17. 如何单目运算符和双目运算符以及三目运算符
  18. 软件工程第三次作业——关于软件质量保障初探
  19. 《SAP后勤模块实施攻略—SAP在生产、采购、销售、物流中的应用》——2.3 按订单生产(MTO)...
  20. int *p = a、p = a、*p = a的正确理解

热门文章

  1. 从一张表里选择一列加入到另一张表_将Excel多个文件汇总到一张表
  2. 在java编程中会使用汉字字符_在java程序中将中文字符写入文件中或者是将文件中的中文字符读入程序时会出现乱码或者一串“?”,求...
  3. XP命令合集(开始→运行→输入的命令集锦开始→运行→输入的命令集锦)
  4. 获得阿里巴巴编码规范技能认证
  5. 这些假脸实在太逼真了!英伟达造出新一代GAN,生成壁纸级高清大图毫无破绽...
  6. 4小时学会雅达利游戏,AI需要几台电脑?
  7. 前阿里P10大神AI创业,主打决策智能,从《星际争霸II》开始
  8. 小鹏汽车又有高管加盟,这次是前一汽技术研发院副院长刘明辉
  9. 这位顶会领域主席的论文被自己的AI审稿系统拒绝了
  10. 51nod 1062 序列中最大的数【打表】