简单来看一下decode的表达式:
decode(条件,值1,返回值1,值2,返回值2,…值n,返回值n,缺省值);
其实从表达式就能看出来decode的用法,它将输入数值与函数中的参数列表相比较,根据输入值返回一个对应值。
IF 条件=值1 THENRETURN(翻译值1)ELSIF 条件=值2 THENRETURN(翻译值2)......ELSIF 条件=值n THENRETURN(翻译值n)ELSERETURN(缺省值)END IF
示例:
查询某班的男生和女生的数量是多少?
如果不用decode,正常的sql应该这么写:
select count(*) from 表 where 性别 = 男;select count(*) from 表 where 性别 = 女;
如果想要将结果整合,还得使用 union
如果使用decode
select sum(decode(性别,男,1,0)),sum(decode(性别,女,1,0)) from table;
是不是非常的方便!!!
本文发布于:2024-02-01 21:55:03,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170679570039660.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |