我正在创建一个报告,我需要显示该报告的到期日,但是当到期日为空时,我必须显示诸如天,月或年之类的数值
Nvl(To_Char(b.Charter_Start_Date, 'DD/MM/RR') || '-' ||
To_Char(b.Charter_End_Date, 'DD/MM/RR',Charter_Period_min || ' '
||Charter_Period_Max ) "EXPIRY DATE",
当开始日期和结束日期为null时表示 我必须显示30天或4个月或2年
答案 0 :(得分:0)
我想我知道您想要做什么,但是您的NVL()在这种情况下将无法工作,因为第一个参数是一个包含'-'
的字符串,该字符串永远不会为null。尝试这样的事情。
CASE when b.Charter_End_Date is not null
then To_Char(b.Charter_Start_Date, 'DD/MM/RR') || '-' || To_Char(b.Charter_End_Date, 'DD/MM/RR')
else Charter_Period_min|| ' ' ||Charter_Period_Max
END "EXPIRY DATE",