SQL Server、Oracle和MySQL中查出值为NULL的替换

来源:岁月联盟 编辑:zhuzhu 时间:2008-09-04
 在SQL Server Oracle MySQL当数据库中查出某值为NULL怎么办?

  1、MSSQL: ISNULL()

  语法

  ISNULL ( check_expression , replacement_value )

  参数

  check_expression

  将被检查是否为 NULL的表达式。check_expression 可以是任何类型的。

  replacement_value

  在 check_expression 为 NULL时将返回的表达式。replacement_value 必须与 check_expresssion 具有相同的类型。

  返回类型

  返回与 check_expression 相同的类型。

  注释

  如果 check_expression 不为 NULL,那么返回该表达式的值;否则返回 replacement_value。

  2、Oracle: NVL()

  语法

  NVL(eExpression1, eExpression2)

  参数

  eExpression1, eExpression2

  如果 eExpression1 的计算结果为 null 值,则 NVL() 返回 eExpression2。如果 eExpression1 的计算结果不是 null 值,则返回 eExpression1。eExpression1 和 eExpression2 可以是任意一种数据类型。如果 eExpression1 与 eExpression2 的结果皆为 null 值,则 NVL( ) 返回 NULL

  返回值类型

  字符型、日期型、日期时间型、数值型、货币型、逻辑型或 null 值

  说明

  在不支持 null 值或 null 值无关紧要的情况下,可以使用 NVL( ) 来移去计算或操作中的 null 值。

  3、Mysql: IFNULL()

  语法

  IFNULL(expr1,expr2)

  参数

  expr1,expr2

  假如expr1不是NULL,IFNULL()返回expr1,否则它返回expr2。IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。