1
我想修改我的內聯函數,以便它可以處理兩個變量作爲輸入。只有一個它工作得很好。在sql(server 2008)內聯函數中定義幾個輸入變量
FUNCTION [dbo].[TBL_UDF_HowOften]
(
-- Add the parameters for the function here
@membername as varchar(15),
@tablename as varchar(15)
)
RETURNS @ergebnis TABLE
(
participated float,
percent float,
WonWen1 float,
WonWen2 float,
WonWen3 float
)
AS
BEGIN
DECLARE @wintimes float
DECLARE a lot of other stuff...
SELECT @wintimes = COUNT(DidWin)
FROM @tablename
WHERE DidWin = 1 AND membername = @membername
... and so on
那麼@membername被識別,但@tablename被標記爲「必須聲明表變量」@tablename「。」
SQL不允許表名作爲變量 - 這需要動態SQL才能起作用。 – 2011-05-29 17:12:33
有沒有解決方法? – Lumpi 2011-05-29 17:15:23
除了正確的編碼或已經提到的內容? – 2011-05-29 17:16:34