• Oracle的 NULL 与 空字符串''


    刚开始在Oralce 数据库里写SQL时,null 和 空字符串'' 经常搞混淆,现在简单描述下这两种类型的区别与联系。


    NULL

              数据库的一种特殊数据类型,代表是未知的、不确定的,有无数种可能性。

              NULL  只能通过 is null,is not null 判断。

              NULL 与+、-、*、/ 运算事结果都是NULL,与字符串拼接时||,可以说视为''。

              所以,列之间运算时需要使用nvl() 函数,这样才能保证结果的正确性。   


              

              select 'X'         as c1,
                          null       as c2,
                          null + 1 as c3,
                          null -1   as c4,
                          null *1   as c5,
                          null /1    as c6,

                          null||'a'  as c7

               from dual

              


    空字符串‘’

              数据库的 字符类型(varchar2 ),Oracle数据库是不存储这种值的。

              空字符串'' 是NULL 字符类型的表现形式。

              

              select *
                from dual
             where 1=1
                 and '' is null ;

             




            ’’和NULL有联系有区别,

            对于NULL来说,表示了各种数据类型的NULL值。

            对于空字符串’’来说,表现出了字符类型的特点,是NULL 字符类型的表现形式。

              


          



  • 相关阅读:
    web Function函数
    web语言发展史
    用户正则
    字符串替换
    css单位
    JavaScript DOM&BOM
    css颜色的设置
    pseudo-class与pseudo-element的不同点与相同点
    对css语法中position值的理解
    API
  • 原文地址:https://www.cnblogs.com/ctypyb2002/p/9793185.html
Copyright © 2020-2023  润新知