Oracle 处理空值的函数

来源:互联网 发布:淘宝退款1 手续费不退 编辑:程序博客网 时间:2024/06/03 16:06

1.NVL(expr1,expr2)

 如果expr1为NULL,则该函数显示expr2的值;

2.NVL2(expr1,expr2,expr3)

如果expr1的值为NULL,则该函数显示expr3的值;不为NULL,显示expr2的值;

3.NULLIF(expr1,expr2)

如果expr1=expr2,返回NULL;若不等,则返回第一个表达式的值;

4.COALSECE(expr1,expr2,expr3)

如果全为NULL,则函数值为NULL;若有一项不为NULL,则显示那一项exprN;若三项都不为空,则显示最前面的一项expr;

5.CASE

SELECT cust_last_name,
 CASE credit_limit WHEN 100 THEN 'Low'

  WHEN 5000 THEN 'High'
 ELSE 'Medium' END

FROM customers;

类似C语言的case

6.DECODE

SELECT product_id,       DECODE (warehouse_id, 1, 'Southlake',                              2, 'San Francisco',                              3, 'New Jersey',                              4, 'Seattle',                                'Non-domestic')        "Location of inventory" FROM inventories       WHERE product_id < 1775;
原创粉丝点击