以下のストアドプロシージャを作成できましたが、ドロップして関数として作成するのに問題があります。どんな助けでも大歓迎です:
CREATE PROC spTriangular
@ValueIn int,
@ValueOut int OUTPUT
AS
DECLARE @InWorking int
DECLARE @OutWorking int
IF @ValueIn != 1
BEGIN
SELECT @InWorking = @ValueIn - 1
EXEC spTriangular @InWorking, @OutWorking OUTPUT
SELECT @ValueOut = @ValueIn + @OutWorking
END
ELSE
BEGIN
SELECT @ValueOut = 1
END
RETURN
GO
このストアドプロシージャを実行する場合:
DECLARE @WorkingOut int
DECLARE @WorkingIn int
SELECT @WorkingIn = 5
EXEC spTriangular @WorkingIn, @WorkingOut OUTPUT
PRINT CAST(@WorkingIn AS varchar) + ' Triangular is ' + CAST(@WorkingOut AS varchar)
GO
Triangular is 15