如果我在'As'之後添加'Begin'它說不正確的語法。它工作得很好如果我試圖返回一個值。返回'表'的函數沒有開始...結束?
相反,我要補充「爲」開放的括號()
這是爲什麼後「迴歸」?
有了一個值作爲回報,我可以做到這一點罰款:
CREATE FUNCTION MATHEE(@A int,@B int)
returns int
as
begin
DECLARE @C int
SET @C = @A + @B
return @C
end
隨着表作爲回報,我不能:
CREATE FUNCTION TOP_USERSs(@number int,@bob varchar(20))
RETURNS TABLE
AS
BEGIN
RETURN SELECT agent from Agents where agent = @bob and prime > @number
END
它說:
Inco 'BEGIN'附近的正確語法。
它使用括號中且無需BEGIN..END雖然工作得很好:
CREATE FUNCTION TOP_USERSs(@number int,@bob varchar(20))
RETURNS TABLE
AS
RETURN
(
SELECT agent from Agents where agent = @bob and prime > @number
)
你需要證明失敗的SQL。 –
@AlexK。添加。我做了這些例子,假設返回一個值或整個表的語法都是相同的。 –