我想在 PLSQL 的 CASE THEN 语句中编写一个 select 语句,但它会引发错误。请告知我是否可以在 THEN 语句中编写 select 语句。
类似于我的要求的示例如下所示
SET SERVEROUTPUT ON
DECLARE
LV_VAR VARCHAR2(4000):=NULL;
BEGIN
LV_VAR:= CASE
WHEN 1=1 THEN
(SELECT 1 FROM DUAL)
ELSE
0
END;
DBMS_OUTPUT.PUT_LINE(LV_VAR);
END;
在执行时,它会抛出如下错误
ORA-06550: line 6, column 26:
PLS-00103: Encountered the symbol "SELECT" when expecting one of the following:
( - + case mod new not null <an identifier>
<a double-quoted delimited-identifier> <a bind variable>