zoukankan      html  css  js  c++  java
  • null和任何值都不能比较 踩坑

    • null和任何值都不能比较

    • null只能用is null 或者is not null 来判断,不能用=或者!=来判断

      那怎么办呢?

      isnull(value1,value2)

      1、value1与value2的数据类型必须一致。

      2、如果value1的值不为null,结果返回value1。

      3、如果value1为null,结果返回vaule2的值。vaule2是你设定的值。

      如果在select中就是isnull可以判断是否是null,如果是给个默认值,isnull("字段名","设定默认的数据")

      例如:select isnull(分数,0) from xuesheng where name='张三' 在表xuesheng中,字段分数如果为空,结果输出0。如果不为空,输出字段分数的值。

      在sql server中字段为空的写法,select name from A where name is null/is not null 。而不是name=null、name=' '。

      1.isnull(exper) 判断exper是否为空,是则返回1,否则返回0

      2.ifnull(exper1,exper2)判断exper1是否为空,是则用exper2代替

      3.nullif(exper1,exper2)如果expr1= expr2 成立,那么返回值为NULL,否则返回值为 expr1。

      1、nvl(value1,value2)

      这个函数的意思是如果value1的值为null,那么函数返回value2的值 ,如果value1不为空,那么就返回value1的值。

      需要注意的是value1和value2要保持字段类型相同。

      2、nvl2(value1,value2,value3)

      这个函数的意思是如果value1的值为null 函数返回value3 否则函数返回value2 也就是说函数永远不会返回value1

      注意的是参数value2 value3可以是除了LONG类型之外的任意数据类型。

      3、NULLIF函数的格式如下:

      NULLIF(expr1,expr2),含义是:如果第一个参数的值等于第二个参数的值则返回空,否则返回第一个值。

     
    我不是来改变世界的
  • 相关阅读:
    正则表达式
    数组去重
    [WOJ4354] 蜀石经
    [NOI2002] 银河英雄传说
    [洛谷P2186] 小Z的栈函数
    [洛谷P2756]飞行员配对方案问题
    [洛谷P2071] 座位安排
    [洛谷P2417]课程
    [洛谷P1640] [SCOI2010]连续攻击游戏
    [洛谷P3512 [POI2010]PIL-Pilots]
  • 原文地址:https://www.cnblogs.com/notchangeworld/p/15722255.html
Copyright © 2011-2022 走看看