当case函数列不使用别名的时候,末尾的end case 中case可以加可以不加, 但是当这一列要有别名的时候,就不能加case.
例如
SELECT
ORDER_ID,
CASE WHEN RPTERM = '1' and to_date(ACTUAL_PAYDATE,'yyyy-mm-dd') - to_date(PAY_DATE,'yyyy-mm-dd') > 0 THEN to_date(ACTUAL_PAYDATE,'yyyy-mm-dd') - to_date(PAY_DATE,'yyyy-mm-dd')
ELSE null END CASE OverdueDays1
from
CGI_REPAY_PLAN
会报错,需要去掉Case
SELECT
ORDER_ID,
CASE WHEN RPTERM = '1' and to_date(ACTUAL_PAYDATE,'yyyy-mm-dd') - to_date(PAY_DATE,'yyyy-mm-dd') > 0 THEN to_date(ACTUAL_PAYDATE,'yyyy-mm-dd') - to_date(PAY_DATE,'yyyy-mm-dd')
ELSE null END OverdueDays1
from
CGI_REPAY_PLAN