zoukankan      html  css  js  c++  java
  • about null-from cyber

    SQLPLUS

    1.
    SQL> select 1 from dual where null=null;
    未选定行

    SQL> select 1 from dual where null='';
    未选定行

    SQL> select 1 from dual where null=0;
    未选定行

    SQL> select 1 from dual where ''='';
    未选定行

    以上4个查询中,大家可以看到null在oracle中可以理解为什么都没有的意思,它与任何对象都是不相等的。


    2.
    SQL> select 1+null from dual;

        1+NULL
    ----------


    SQL> select 1-null from dual;

        1-NULL
    ----------


    SQL> select 1*null from dual;

        1*NULL
    ----------


    SQL> select 1/null from dual;

        1/NULL
    ----------

    SQL> select 1 from dual where 1+null is null;

             1
    ----------
             1

    SQL> select 1 from dual where 1-null is null;

             1
    ----------
             1

    SQL> select 1 from dual where 1*null is null;

             1
    ----------
             1

    SQL> select 1 from dual where 1/null is null;

             1
    ----------
             1


    以上是null的加减乘除操作,可见null的加减乘除是null。


    3.
    SQL> select 1 from dual where null is null;

             1
    ----------
             1

    SQL> select 1 from dual where '' is null;

             1
    ----------
             1


    SQL> select 1 from dual where nvl(null,0) is not null;

             1
    ----------
             1

    以上两个查询可以看出null的判断方法是is null,nvl是对null做处理的函数;而且,空字符串也被认为是null。



    提示:null是不能被%匹配到的如select 1 from dual where null like '%'是查不到结果的。

    4.
    SQL> select count(null) from dual;

    COUNT(NULL)
    -----------
              0

    SQL> select count(nvl(null, 0)) from dual;

    COUNT(NVL(NULL,0))
    ------------------
                     1

    以上两个查询提醒大家在统计的时候注意根据自己的需要处理null字段的问题。

    其他说明:
    根据oracle中null的定义,null为未知,不等于null,因此在表中的唯一字段中存在多个null是不会违反唯一行约束的。

  • 相关阅读:
    2019-2020-2 网络对抗技术 20172327 Exp5 信息搜集与漏洞扫描
    2019-2020-2 网络对抗技术 20172327 Exp4 恶意代码分析
    2019-2020-2 网络对抗技术 20172327 Exp3 免杀原理与实践
    2019-2020-2 网络对抗技术 20172327 Exp2 后门原理与实践
    2019-2020-2 网络对抗技术 20172327 Exp1 PC平台逆向破解
    20172327马瑞蕃 2019-2020-2 《网络对抗技术》第一周Kali的安装
    Python创建virtualenv虚拟环境方法
    unittest--单元测试框架
    Linux--SSH免密码登录
    Linux--NIS
  • 原文地址:https://www.cnblogs.com/Jeffrey-xu/p/5083342.html
Copyright © 2011-2022 走看看