首页 > 数据库 > Oracle > Oracle中的decode函数
decode函数是Oracle中的一个非常好用的函数,它的主要用法如下:
decode(value,
即:判断value的值如果满足if1则返回then1,如果满足if2则返回then2,以此类推,否则的话返回else.
假如stuff表中有如下数据:
我们希望统计出男女的人数,怎么写sql语句呢???
用这个吗:select
当然也可以,不过这个一次只能统计一个性别的人数,其实有更简单快捷的方法,那就是使用decode函数,看下面的sql语句:
select
sum(decode(sex,’女’,1,0))
执行结果如下所示:
可以看到,使用decode函数可以很方便的统计出不同性别的人数。
上面的例子中,decode函数是什么意思呢,我来解释一下:
decode(sex,’男’,1,0):如果性别字段sex的值为’男’,则返回1,否则返回0
sum(decode(sex,’男’,1,0)):每一条sex为’男’的记录都会返回一个1,累加之后结果就是男生人数了,同理可用sum(decode(sex,’女’,1,0))得到女生的人数。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/11100592/viewspace-1117612/ ,如需转载,请注明出处,否则将追究法律责任。