SQL 语法里的逻辑判断

199 篇文章 0 订阅

在日常代码编程中,我们会经常用到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,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值