我正在尝试创建一个case
可以工作的语句,但我似乎以某种方式弄乱了语法。这是我到目前为止所拥有的:
SELECT lp.assign_date, CASE WHEN lp.assign_date > '01-JAN-13'
THEN
(select count(*) > 0 THEN 'BAD' ELSE 'GOOD' END
FROM transaction_table
WHERE ACCOUNT = :V_ACCT
AND transaction_date < :V_TRAN_DATE
AND transaction_code = :V_TRAN_CODE
AND :V_TRAN_CODE IN (1,6,25)
AND attorney_id = :V_ATTY_ID)
ELSE
(SELECT
function_legal_chk(:V_ACCT, :V_TRAN_DATE)
FROM dual)
FROM legal_placement lp;
本质上,它检查分配的日期是否在一月之后,如果是,则执行下一个case statement
,否则执行function
.
这是我收到的错误:
ORA-00923: FROM keyword not found where expected
00923. 00000 - "FROM keyword not found where expected"
根据我对 的了解和研究,case statements
我的语法似乎是正确的,但我不确定 acase
中的 acase
是否可以完成。
任何帮助深表感谢。