NULL 是数据库中特有的数据类型

Oracle 中对空的描述
null
Absence of a value in a column of a row. Nulls indicate missing, unknown, or inapplicable data. 

当一条记录的某个列为 NULL ,则表示这个列的值是未知的、是不确定的既然是未知的,就有无数种的可能性。
因此, NULL 并不是一个确定的值
 
-- 判断一个列为空
SELECT * FROM CUSTOMEREN C WHERE C.MODIFYDT IS NULL;
-- 判断一个列非空
SELECT * FROM CUSTOMEREN C WHERE C.MODIFYDT IS NOT NULL;
 

测试:
 
--NULL=NULL么: NULL is not equal to NULL
SELECT CASE
         WHEN NULL = NULL THEN
          'NULL is equal to NULL'
         ELSE
          'NULL is not equal to NULL'
       END "NULL=NULL?"
  FROM DUAL;
 
--空串=NULL么 :空串 is not equal to NULL
SELECT CASE
         WHEN '' = NULL THEN
          '空串 is equal to NULL'
         ELSE
          '空串 is not equal to NULL'
       END "空串=NULL?"
  FROM DUAL;
 
--空格=NULL么: 空格 is not equal to NULL
SELECT CASE
         WHEN ' ' = NULL THEN
          '空格 is equal to NULL'
         ELSE
          '空格 is not equal to NULL'
       END "空格=NULL?"
  FROM DUAL;
 
--'' 是NULL么: '' is NULL
SELECT CASE
         WHEN '' IS NULL THEN
          ''''' is NULL'
         ELSE
          ''''' is not NULL'
       END "'' is NULL?"
  FROM DUAL;
 
--空串=空串么:'' is not equal to ''
SELECT CASE
         WHEN '' = '' THEN
          ''''' is equal to '''''
         ELSE
          ''''' is not equal to '''''
       END "''''=''''?"
  FROM DUAL;
 
-- 将null替换成一个值
 select 1 from dual where nvl(null,0)=nvl(null,0);
 

NULL 排序问题
 
方法 1  将null替换成一个值 ,是用nvl 函数
 select 1 from dual where nvl(null,0)=nvl(null,0);
 
方法2 是用NULLS LAST,NULLS FIRST处理 
SELECT c.modifydt FROM customeren c ORDER BY c.modifydt NULLS LAST;
SELECT c.modifydt FROM customeren c ORDER BY c.modifydt NULLS FIRST;
 

【ORACLE】特殊的NULL的更多相关文章

  1. Oracle空串与null的处理

    来源于:http://blog.itpub.net/24870090/viewspace-1057853/ Oracle空串与null的处理[@more@] Oracle中的空字符串基本上是被当成空N ...

  2. SQL升级Oracle挖的Null坑,你懂的!

    最近公司做系统数据库升级,主要由原来的SQL数据库升级Oracle数据库,对于拥有千万级数据库的实用系统来说,迁移不是件容易的时,光数据同步就需要很久,更别说要修改升级原来的SQL库使用的存储过程和视 ...

  3. Oracle中的NULL、’’(空字符串)以及’_’(空格)

    本文首发于 http://youngzy.com/ 在Oracle中使用 null,''(空字符串),'_'(空格)时,有没有遇到问题?产生疑惑? null和’’(空字符串)是一个意思 注: 为了便于 ...

  4. oracle 中的null与''

    1.先看看Null与''在oracle中的表现 C:\Users\zen>sqlplus hr/hr SQL Production :: Copyright (c) , , Oracle. Al ...

  5. 【转】oracle中的NULL、''(空字符串)以及'_'(空格)

    在Oracle中使用null,''(空字符串),'_'(空格)时,有没有遇到问题?产生疑惑? 1.NULL和''(空字符串)是一个意思 注:为了便于区分空字符串和空格,下面的示例均以'_'代表空格. ...

  6. oracle之简null空值问题,用nvl(a,b)函数解决

    oracle之简null空值问题,用nvl(a,b)函数解决 原文链接:https://blog.csdn.net/u013821825/article/details/48766749 oracle ...

  7. 【转】Oracle索引列NULL值引发执行计划该表的测试示例

    有时开发进行表结构设计,对表字段是否为空过于随意,出现诸如id1=id2,如果允许字段为空,因为Oracle中空值并不等于空值,有可能得到意料之外的结果.除此之外,最关键的是,NULL会影响oracl ...

  8. Oracle中的null

    测试数据:公司部分员工基本信息

  9. oracle 空值与 null

    Oracle中的空字符串基本上是被当成空NULL来处理的,我们可以从下面的得到印证. select nvl('','NULL') from dual          返回 'NULL' select ...

  10. Oracle 与 Mysql NULL值,空字符串''的区别

    Oracle(null等同于空字符'') 1.oracle插入空字符串默认替换成null 2.oracle查询(null和被替换的空字符)时使用 is null/is not null 3.使用聚合函 ...

随机推荐

  1. getCanonicalName和getSimpleName getName的区别与应用

    接口: package com.test; public interface Fruit { } 一个实现类: package com.test; public class Apple impleme ...

  2. python 学习 : 一个简单的秒表

      游戏说明:绿色数字(左边表示成功停止在整秒的次数,右边表示停止的总次数) 点击stop,如果小数点后为0,即你停止的时间是整秒数,右上方斜杠左边数字加一 把代码复制到这个网页code run he ...

  3. JS中数组Array的用法{转载}

    js数组元素的添加和删除一直比较迷惑,今天终于找到详细说明的资料了,先给个我测试的代码^-^var arr = new Array();arr[0] = "aaa";arr[1] ...

  4. 第2月第6天 iOS 运行时添加属性和方法

    http://blog.csdn.net/meegomeego/article/details/18356169 第一种:runtime.h里的方法 BOOL class_addProperty(Cl ...

  5. Daily Scrum Meeting ——ThirdDay

    一.Daily Scrum Meeting照片 二.Burndown Chart 三.项目进展 1.完成了github上的文档整理 Transcend/ActivityHelper 2.主界面侧滑框的 ...

  6. 引用项目外dll时不显示注释的解决方案

    在引用项目外的dll时,显示类库中的注释可按以下步骤: 方法或变量用summary添加注释,如:         /// <summary>发送post请求         /// < ...

  7. composer 安装提示 PHP Warning: readfile(): SSL operation failed with code 1

    这是php设置openssl 没有指定cacert.pem (证书) 第一步:下载 cacert.pem 文件下载地址 https://curl.haxx.se/docs/caextract.html ...

  8. ASP.NET获取客户端的相关信息

    /// <summary>        /// 获取远程浏览器端 IP 地址        /// </summary>        /// <returns> ...

  9. XmlException: 名称不能以“<”字符(十六进制值 0x3C)开头

    svn 版本冲突引起的: 产看config 文件里面的内容是否冲突,这个问题可能和代码无关

  10. js中数组连接concat()

    数组连接concat() concat() 方法用于连接两个或多个数组.此方法返回一个新数组,不改变原来的数组. 语法 arrayObject.concat(array1,array2,...,arr ...