快乐随行

导航

SQL 语法里的逻辑判断

在日常代码编程中,我们会经常用到if-else进行逻辑判断,在SQL中是否也能进行逻辑判断呢,答案是肯定的!在SQL语句中有以下三个函数可以进行逻辑判断。

1. decode 函数:

语法
decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值)
--缺省值可以省略
函数含义
表示如果 条件 等于 值1 时,DECODE函数的结果 返回值1 ,...,如果不等于任何一个条件值,则返回缺省值。
即:decode(value, if1, then1, if2,then2, if3,then3, . . . else )
Value 代表某个表的任何类型的任意列或一个通过计算所得的任何结果。如果value的值为if1,decode函数的结果是then1;如果value等于if2,decode函数结果是then2;等等。事实上,可以给出多个if/then 配对。如果value结果不等于给出的任何配对时,decode结果就返回else。需要注意的是,这里的if、then及else 都可以是函数或计算表达式。
【注意】:decode 函数 ,只能在select 语句用。DECODE函数是ORACLE PL/SQL特有的功能强大的函数之一,其他数据库厂商的SQL实现还没有此功能。

2. nvl(EXPR1,EXPR2)函数

若EXPR1是NULL,则返回EXPR2,否则返回EXPR1.

3. sign(value)函数

根据value值是0、正数还是负数,分别返回0、1、-1,


作者:快乐随行

https://www.cnblogs.com/jddreams/p/14277836.html

著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明原文作者及出处。


posted on 2021-01-14 16:10  快乐随行  阅读(1200)  评论(0编辑  收藏  举报