我看起来高高在低,但无法弄清楚这一点。
我在 Oracle 中定义了这个函数:
FUNCTION MY_FUNCTION(
INPUTVAR1 IN OUT NUMBER,
INPUTVAR2 VARCHAR2
) RETURN NUMBER;
创建这个函数的人基本上是返回输入参数,如果它不为0。否则如果INPUTVAR1 为0,它将返回一个新值。我想要那个新的价值。
在 T-SQL 中它是如此简单以至于愚蠢:
DECLARE @MyVar INT = 0;
SET @MyVar = MY_FUNCTION(@MyVar, NULL);
SELECT @MyVar as Result;
但是在 Oracle 中,我无法弄清楚如何返回返回值。这是我到目前为止所拥有的:
DECLARE MyVar NUMBER := 0;
BEGIN
MyVar := MY_FUNCTION(INPUTVAR1 => MyVar, INPUTVAR2 => NULL)
END;
但我不知道如何在结果中使用 MyVar。我绝对不能选择它。我试过DBMS_OUTPUT.PUT_LINE(MyVar);但没有运气。
任何人都知道我如何返回的值MyVar?