我读过一篇关于从oracle专栏重命名数据的文章。我按照其中一个查询发布,但是当我尝试自己的时候。我只获得NULL值。请帮帮我,我的DECODE QUERY中有什么问题。
状态栏的原始数据是“无应答”和“回答”
感谢。
这是我的查询
select call_time, decode(status, 'no answer', 'hey', 'answer', 'yes'), channel
FROM APP_ACCOUNT.CC_CALL;
这个的输出是:
call_time decode(status, 'no answer', 'hey', 'answer', 'yes') CHANNEL
10/22/2013 NULL DAHDI/i1/
11/05/2013 NULL DAHDI/i2/
而不是:
call_time decode(status, 'no answer', 'hey', 'answer', 'yes') CHANNEL
10/22/2013 yes DAHDI/i1/
11/05/2013 hey DAHDI/i2/
答案 0 :(得分:1)
使用解码时,应始终提供默认值 decode(db的值,匹配1,替代值1,匹配2,替代值,...匹配n,替代值n,默认值)
这样如果所有匹配都失败,您将不会返回null