decode函数相当于一条件语句(if)它将输入数值与函数中的参数列表相比较,根据输入值返回一个对应值。函数的参数列表是由若干数值及其对应结果值组成的若干序偶形式。当然,如果未能与任何一个实参序偶匹配成功,则函数也有默认的返回值。区别于sql的其它函数,decode函数还能识别和 *** 作空值
decode函数相当于一条件语句(if)它将输入数值与函数中的参数列表相比较,根据输入值返回一个对应值。函数的参数列表是由若干数值及其对应结果值组成的若干序偶形式。当然,如果未能与任何一个实参序偶匹配成功,则函数也有默认的返回值。区别于sql的其它函数,decode函数还能识别和 *** 作空值
其具体的语法格式如下:
decode(input_value,value,result[,value,result…][,default_result]);
根据意思错误的里面decode里应该是101 115 125 103这4个值
decode函数返回的值不固定,是根据你设置的值
这里decode(category,'COMPUTER',01,'FITNESS',015,'SELF HELP',025,003)返回的是数值
改为decode(category,'COMPUTER','01','FITNESS','015','SELF HELP','025','003')则返回字符型
可以啊,小于60不就是条件么。
不过decode要实现这个大于小于就要用到sign函数进行组合。
decode(sign(字段-60),-1,'正常',1,'异常')
建议用case when then
case when 字段<60 then ‘正' when 字段>60 then '异常' else '其他' end
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)