【发布时间】:2021-12-08 14:43:02
【问题描述】:
当没有找到记录时,我想返回一个默认值,比如N/A。我试过DECODE 和NVL 和NVL2 但仍然一无所获。我的实际查询要复杂得多,只是发布一个简化版本
SELECT DECODE(test_date,NULL,'N/A', test_date) test_date
FROM Table1
WHERE name = 'Unknown'
【问题讨论】:
-
只要使用
nvl(min(test_date) ,'N/A') -
这给了我一个错误“在预期数字的地方找到了非数字字符”
-
啊,我明白了:您不能将字符串返回到具有
date数据类型的列中。因此,您需要使用 to_char 将min(test_date)转换为字符串,或者使用其他内容而不是 'N/A'