在Oracle过程中使用CASE语句不起作用



我在下面写了CASE语句,以使我的逻辑工作。但它不起作用,给我错误作为

错误(224122(:PLS-00103:遇到符号"("当期望以下内容之一时:*&=-+</>当<指数(**(>lt>或!=或~=>=<=<gt;和||成员子集之间的like2 like4 likec;结束";被替换为"("继续。

下面是我的代码:

V_AMTINMONTH := (CASE V_DATEVAR_VALUE WHEN 'START' THEN V_AMTINMONTH WHEN 'END' THEN (V_AMTINMONTH - V_NOOFDAYSINMONTH + 1));

尝试

v_amtinmonth :=
CASE
WHEN v_datevar_value = 'START'
THEN
v_amtinmonth
WHEN v_datevar_value = 'END'
THEN
v_amtinmonth - v_noofdaysinmonth + 1
END;

最新更新