`

nvl()与is null

阅读更多

select * from t_ACDM_FLOW_INFO t where t.FATHER_ID is null and nvl(t.old_tache_id,t.tache_id)='3' and t.USER_ID='2';

 

NVL( string1, replace_with)

  功能:如果string1为NULL,则NVL函数返回replace_with的值,否则返回string1的值,如果两个参数的都为NULL ,则返回NULL。

  注意事项:string1和replace_with必须为同一数据类型,除非显示的使用TO_CHAR函数。

  例:NVL(TO_CHAR(numeric_column), 'some string') 其中numeric_column代指某个数字类型的值。

  例:nvl(yanlei777,0) > 0

  NVL(yanlei777, 0) 的意思是 如果 yanlei777 是NULL, 则取 0值

  通过查询获得某个字段的合计值,如果这个值为null将给出一个预设的默认值

NVL的扩展-NVL2

  Oracle在NVL函数的功能上扩展,提供了NVL2函数。

  NVL2(E1, E2, E3)的功能为:如果E1为NULL,则函数返回E3,否则返回E2。

http://baike.baidu.com/view/1091825.htm

分享到:
评论

相关推荐

    ISNULL()、NVL()、IFNULL() 和 COALESCE() 函数

    ISNULL()、NVL()、IFNULL() 和 COALESCE() 函数的几种用法,

    深入浅析Orcale的nvl函数和SQL Server的isnull函数

    NVL(Expr1,Expr2)如果Expr1为NULL,返回Expr2的值,否则返回Expr1的值,Expr1,Expr2都为NULL则返回NULL NVL2(Expr1,Expr2,Expr3)如果Expr1为NULL,返回Expr2的值,否则返回Expr3的值 NULLIF(Expr1,Expr2)如果Expr1和...

    oraclesql判断值为空-Oracle-sqlserver的空值(null)判断.pdf

    Oracle SQL 判断值为空OrNull 判断 Oracle SQL 中判断值为空...在 Oracle 和 SQL Server 中,我们可以使用 `NVL` 和 `ISNULL` 函数来判断值为空或 Null,並使用 `isNull` 和 `is not null` 来判断值是否为空或 Null。

    Oracle null的使用

    null 与 0、空字符串、空格不同,例如在 PL/SQL 中,空串与 NULL 被视为等价值。 Oracle 中空字符串同 null,不同于 MSSQL 中真正在将空串视为一个有意义的标识,即不是一个空值。Sybase 中同样不存在长度为 0 的...

    oracle中对null值的处理

    Oracle不支持NULL与任何值(包括另一个NULL)的直接比较。`NULL = NULL` 返回的结果是未知(而不是TRUE),因为NULL意味着未知,所以无法确定两个NULL是否相等。 3. WHERE子句中的NULL处理: 在查询中,`WHERE ...

    关于sql中求平均值出现null值的解决方案

    2. 使用`IFNULL`函数(在MySQL中)或`ISNULL`函数(在SQL Server中):这两个函数的作用与`COALESCE`类似,都是将null转换为另一个值。例如: ```sql SELECT AVG(IFNULL(column_name, 0)) FROM table_name; -- ...

    SQL中的ISNULL函数使用介绍

    - `replacement_value`: 如果`check_expression`是`NULL`,则`ISNULL`会返回这个替代值,它必须与`check_expression`具有相同的类型。 **返回类型**: `ISNULL`函数返回与`check_expression`相同的类型。 **使用...

    浅谈mysql可有类似oracle的nvl的函数

    2. 使用 `ISNULL` 的例子(请注意,`ISNULL` 仅用于检查某个值是否为 NULL,并非替换 NULL 值): ```sql SELECT ISNULL(NULL); -- 如果表达式为NULL,返回1 SELECT ISNULL(1); -- 如果表达式非NULL,返回0 ``` ...

    SQL NULL 函数

    IFNULL()函数与ISNULL()类似,但它的语法更简单,直接接受两个参数,如果第一个参数为NULL,就返回第二个参数的值: ```sql SELECT ProductName, UnitPrice * (UnitsInStock + IFNULL(UnitsOnOrder, 0)) FROM ...

    oracle处理空值的方法

    与NVL相比,COALESCE可以接受多个参数,提供了更多的灵活性。 **示例代码:** ```sql HR@XE> select coalesce(commission_pct, 0) 2 from employees 3 where commission_pct is null 4 and rownum = 1; ``` 此...

    oracle的nvl函数的使用介绍

    NULL不能参与一般的算术运算,因为NULL与任何值相加、相减、相乘或相除的结果仍然是NULL。在比较操作中,也不能直接使用`=`, `, `>`等比较符来检查NULL,应该使用`IS NULL`或`IS NOT NULL`。例如: ```sql SELECT *...

    习惯了oracle10g写法的朋友们注意了,oralce11g有变化了,小谈空字符串与null的区别

    这是因为oracle中字段时空字符串等同与null,也就是nvl(字段,‘’)也是null,不会得到‘’,所以这个条件在oracle11g上永远是不成立的。 但是要特别注意的是字段时空字符串与null在where条件时不相同,不信可以测试...

    Oracle中的INSTR,NVL和SUBSTR函数的用法详解

    NVL函数用于处理NULL值,它将检查提供的表达式是否为NULL,如果是,它将返回第二个参数的值。基本语法为: ```sql NVL(expression, replacement_value) ``` - `expression`:可能为NULL的表达式。 - `...

    SQL 基础--SELECT 查询

    判断列是否为空,应使用`IS NULL`或`IS NOT NULL`,而不是`= NULL`或`!= NULL`。在排序时,空值会按照特定规则处理。在逻辑运算中,空值有特殊的处理方式,如`AND`运算优先级是:F -> NULL -> T,而`OR`运算优先级是...

    UNION ALL 的使用方法

    SELECT NVL(SUM(A.AMOUNT),0) INTO W_ATS_RE_BOOKED_AMT FROM XXXXXXXXX A, ( SELECT B.TRD_NO FROM XXXXXXXXX B WHERE B.CLIENT_CD = W_IN_CLIENT_CD UNION ALL ... AND A.RESULT IS NULL ;

    SQL Server、Oracle和MySQL判断NULL的方法

    `ISNULL()`函数会返回与`check_expression`相同类型的值。如果`check_expression`非NULL,那么函数就返回`check_expression`本身的值。 2. **Oracle** 提供的函数是`NVL()`。这个函数的工作原理是:如果`...

    Mysql NULL导致的神坑

    1. **NULL与任何比较运算符的结果** 当我们尝试用比较运算符(如`>`、`、`>=`、`、`=`、`<>`或`!=`)来比较`NULL`值时,结果并不会是预期的`TRUE`或`FALSE`。在MySQL中,任何值与`NULL`进行比较时,返回的结果都是`...

    oracle基础知识

    =, <>`等,以及与NULL值的特殊比较,如`IS NULL`和`IS NOT NULL`。逻辑操作符`AND, OR, NOT`则用于组合条件。`LIKE`操作符用于模式匹配,`%`代表零个或多个字符,`_`代表单个字符。日期字段的比较通常涉及`TO_DATE`...

Global site tag (gtag.js) - Google Analytics