oracle中decode()函数

2025-02-24 20:41:54
推荐回答(2个)
回答1:

decode()只是个转义的函数
例如在你的语句中decode(category,
'computer',
retail*1.1)
的意思就是
假如字段category为computer'则返回retail*1.1,这里retail*1.1是什么类型返回值就是什么类型;看你第二个语句也没有错误(我说从语法结构上),而且我自己也做了测试没有问题;你可以加q然后远程协助看看你的环境

回答2:

根据意思错误的里面decode里应该是1.01
1.15
1.25
1.03这4个值
decode函数返回的值不固定,是根据你设置的值
这里decode(category,'COMPUTER',0.1,'FITNESS',0.15,'SELF
HELP',0.25,0.03)返回的是数值
改为decode(category,'COMPUTER','0.1','FITNESS','0.15','SELF
HELP','0.25','0.03')则返回字符型