Plsql 用于检查两个值的pl sql解码函数

Plsql 用于检查两个值的pl sql解码函数,plsql,oracle11g,Plsql,Oracle11g,在select语句中,我需要根据其他两个列上的数据返回一个值。比如说, select clarify, clarify_rece_date, clarify_process_date from test_db; 因此,如果clearify\u rece\u date和clearify\u process\u date均不为空,则clearify应返回yes,如果为空,则clearify应返回No 如果我只想检查下面的onle列,我可以在这里使用decode select decode(cla

在select语句中,我需要根据其他两个列上的数据返回一个值。比如说,

select clarify, clarify_rece_date, clarify_process_date
from test_db;
因此,如果clearify\u rece\u date和clearify\u process\u date均不为空,则clearify应返回yes,如果为空,则clearify应返回No

如果我只想检查下面的onle列,我可以在这里使用decode

 select decode(clarify_rece_date, null,'Yes','No') clarify, clarify_rece_date,      clarify_process_date
    from test_db;

但是,在这种情况下,如何检查这两列?

您可能需要一个相当复杂的
解码。然而,使用
CASE
语句更有意义

SELECT (CASE WHEN clarify_rece_date IS NOT NULL AND 
                  clarify_process_date IS NOT NULL
             THEN 'Yes'
             ELSE 'No'
         END) clarify,
       clarify_rece_date,
       clarify_process_date
  FROM test_db