如果select查询返回null
,我试图返回空字符串或虚拟字符串。我尝试在NVL(colum,'dummy')
中使用虚拟值,但我仍然遇到no data found
错误。
以下是我的尝试:
1。
SELECT de.destination INTO l_sub_ent
FROM dest de
where de.destination='somevalue' AND de.destination IS NOT NULL;
2。
SELECT COALSECE(de.destination, 'dummy') INTO l_sub_ent
FROM dest de
where de.destination ='some value';
第3
SELECT NVL(de.desc_en, 'dummy') INTO l_sub_ent
FROM dest de
where de.destination ='some value';
答案 0 :(得分:2)
问题不在于de.destination
是NULL
。条件de.destination='somevalue'
没有记录。处理这样的事情。
SELECT Count(1)
INTO v_count
FROM dest de
WHERE de.destination='somevalue';
IF v_count > 0 THEN
SELECT NVL(de.destination,'dummy')
INTO l_sub_ent
FROM dest de
WHERE de.destination='somevalue';
END IF;
答案 1 :(得分:0)
我能够使用以下方法解决:
SELECT NVL(MIN(val), 'dummy') INTO l_sub_ent
FROM dest de
where de.destination ='some value';