您的位置:首页 > 数据库 > Oracle

oracle 中Innvl函数

2012-06-27 09:45 549 查看
今天在无意中看到lnnvl这个函数,分享一下

lnnvl用于某个语句的where子句中的条件,如果条件为真就返回真,否则为假。

其含义可理解为LNNVL == IS NULL OR IS NOT TRUE

它的优势在于处理简单条件判断无法实现的null条件,用举例说明

SQL> select * from plch_employees;

EMPLOYEE_ID LAST_NAME SALARY COMMISSION_PCT

--------------------------------------- -------------------------------------------------------------------------------- ---------- --------------

300 O'Keefe 1000000

100 Picasso 1000000 0.3

200 Mondrian 1000000 0.15

如果要查询commision)不大于20%, 或者为NULL的员工的姓名,则可以用下面

SQL> SELECT last_name FROM plch_employees e WHERE LNNVL (e.commission_pct > .2);

LAST_NAME

--------------------------------------------------------------------------------

O'Keefe

Mondrian

查出小于commision0.2和为null的值,这种方法可以查询出null的值是比较方便的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: