`

Oracle中NVL与NVL2 和NULLIF的用法

阅读更多

1.NULL指的是空值,或者非法值。
   NVL (expr1, expr2)->expr1为NULL,返回expr2;不为NULL,返回expr1。 注意两者的类型要一致
   NVL2 (expr1, expr2, expr3) ->expr1不为NULL,返回expr2;为NULL,返回expr3。expr2和expr3类型不同的话,expr3会转换为expr2的类型
2.NULLIF (expr1, expr2) ->相等返回NULL,不等返回expr1

   通过查询获得某个字段的合计值,如果这个值位null将给出一个预设的默认值
3.select nvl(sum(t.dwxhl),1) from tb_jhde t where zydm=-1这里关心的nvl的用法,nvl(arg,value)代表如果前面的arg的值为null那么返回的值为后面的value

4.另一个有关的有用方法
declare
i integer
select nvl(sum(t.dwxhl),1) into i from tb_jhde t where zydm=-1
这样就可以把获得的合计值存储到变量i中,如果查询的值为null就把它的值设置为默认的1

分享到:
评论

相关推荐

    nvl的相关函数描述

    在数据库编程领域,尤其是Oracle SQL和PL/SQL中,`NVL`、`NVL2`和`NULLIF`函数是处理空值(NULL)的关键工具。这些函数帮助程序员在查询和处理数据时,优雅地处理可能出现的NULL值,确保程序逻辑的正确性和数据的...

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

    总之,Oracle的NVL、NVL2和NULLIF以及SQL Server的ISNULL都是处理NULL值的关键函数。了解它们的差异和使用条件,有助于在不同数据库环境下编写更加灵活和适应性强的SQL代码。在实际开发中,选择哪个函数取决于具体...

    oracle中对null值的处理

    5. NVL、NVL2与COALESCE函数: - `NVL(column, default_value)`:如果column为NULL,则返回default_value,否则返回column的值。 - `NVL2(column, return_if_not_null, return_if_null)`:当column非NULL时返回...

    oracle常用函数

    在Oracle数据库中,为了处理空值(NULL)问题,引入了一系列功能强大的函数,如NVL、NVL2、NULLIF以及COALESCE等。这些函数不仅能够帮助开发者有效处理数据中的NULL值,还能提高SQL查询的灵活性和效率。接下来将详细...

    Oracle中Decode()函数使用技巧

    Oracle中的Decode()函数是数据库查询时非常实用的一个工具,它允许你在SQL语句中实现简单的条件判断,类似于IF-THEN-ELSE逻辑。这个函数在处理数据时提供了灵活性,避免了复杂的CASE语句,使得代码更加简洁易读。...

    SQL语句的DECODE和NVL

    在 SQL 语句中,DECODE 和 NVL 函数是两个非常重要和常用的函数,它们可以帮助我们实现复杂的逻辑判断和数据处理。本文将详细介绍 DECODE 和 NVL 函数的使用方法和实践应用。 一、DECODE 函数 DECODE 函数是 ...

    oracle手册,详解SQL用法

    在处理空值(NULL)时,Oracle提供了`NVL()`, `NVL2()` 和 `NULLIF()` 函数。`NVL()`用于当某个表达式的结果为NULL时,替换为指定的默认值;`NVL2()`则在第二个参数不是NULL时返回第三个参数,否则返回第一个参数;`...

    HANA-SQL参考及Oracle对照-v0.6.docx

    HANA 和 Oracle 中的 nullif 函数都是用于实现这个功能的。然而,HANA 中没有 dual 表,只有 DUMMY 表。 4. nvl(oracle),ifnull(hana)函数 nvl 和 ifnull 函数用于当参数值为 null 时,返回指定的 value。...

    mysql与oracle差异总结

    MySql 中的 NULLIF 函数相当于 Oracle 中的 NVL 函数。MySql 中的 CASE WHEN 语句可以替换 DECODE 函数。MySql 中的 TEXT 等同于 Oracle 中的 LONG 函数。 13. 日期函数 MySql 中的 EXTRACT 函数可以提取日期的年...

    Oracle常用关键词和函数

    在本文中,我们将深入探讨一些Oracle中常用的关键词和函数。 首先,我们来看NVL()函数,这是一个非常实用的处理空值(NULL)的函数。NVL(a, b)的作用是如果表达式a的值为NULL,则返回b的值,否则返回a的值。这在...

    oracle处理空值的方法

    Oracle提供了多种方法来处理空值,包括使用NVL、NVL2、COALESCE函数,以及CASE和DECODE语句。下面将详细介绍这些方法及其应用场景。 ### 1. NVL函数 NVL(expr1, expr2)函数用于替换空值。当expr1为NULL时,NVL函数...

    Oracle数据库试题100题(附答案)

    在实际的SQL语句应用中,若要对NULL值进行操作,可以使用NVL、NVL2、NULLIF、COALESCE等函数,其中NVL函数可以在字段值为空时返回指定的值。在分组函数使用中,如果需要对分组后的结果集进行条件限制,需要用到...

    ORACLE转DB2对照全解

    **注意:** Oracle和DB2中的游标语法类似,但在DB2中,`DECLARE`关键字用于声明游标。 ##### 3.2 UDF和触发器中显式游标的转换 **Oracle:** ```sql CREATE OR REPLACE FUNCTION get_data RETURN NUMBER IS CURSOR...

    Oracle关键字用法整合

    ### Oracle关键字用法整合 #### 1. CONCAT **功能说明**:`CONCAT`用于连接两个或多个字符串。在Oracle中,可以使用`||`作为替代方式。 **示例**: ```sql SELECT CONCAT('%','') FROM dual; ``` 在示例中,由于`...

    sqlserver-oracle 数据类型对照

    - `NULLIF`在Oracle和SQL Server中用于比较并返回NULL。 - `UID`、`SUSER_ID`、`USER_ID`、`USER`、`CURRENT_USER`等在两者中获取用户相关信息。 - `USERENV`在Oracle中获取用户环境信息,SQL Server中无直接对应...

    Oracle数据库试题题(附答案).pdf

    在Oracle中,字符转换函数如NVL(), NULLIF(), NVL2()和DECODE()用于处理NULL值和进行条件逻辑判断。例如,NVL函数可以将NULL值转换为指定的非NULL值,而NULLIF函数则返回两个表达式比较的结果,如果相等则返回NULL。...

    mysql转oracle要注意的几项

    在Oracle中,`NVL`函数被广泛用来将NULL值转换为指定的默认值,这与MySQL中的处理方式类似。例如: ```sql NVL(列名, 0) ``` 这会将`列名`中的任何NULL值替换为0,确保在进行数学运算或比较时不会出现问题。此外,...

    ORACLE中的经典SQL及函数

    本文将深入探讨Oracle中的经典SQL查询和最常用的功能函数,帮助读者更好地理解和应用这些工具。 首先,我们关注的是SQL中的单行函数。这些函数主要用于处理单行数据,包括字符、数字、日期、转换和混合类型等,可以...

    oracle转DB2 对照

    - **Oracle** 和 **DB2** 都支持基本的条件语句,如 `IF-THEN`, `IF-THEN-ELSE`, `IF-THEN-ELSIF` 等。 - Oracle示例: ```sql IF condition THEN -- statements END IF; ``` - DB2示例: ```sql IF ...

    Oracle_学习使用SQL语句

    `NVL2`函数更进一步,当表达式为`NULL`时返回第二个参数,否则返回第一个参数,如`NVL2(column, value_if_not_null, default_value_if_null)`。 3. 字符串连接: Oracle使用双竖线`||`作为字符串连接运算符,例如`...

Global site tag (gtag.js) - Google Analytics