我遇到了一个我无法解决的非常小的问题。
CREATE FUNCTION dbo.fntblPsmHaendlerDailyCostsinfodump(@pDateString varchar(8), @HaendlerID int, @TableName varchar(100),@CountryID int)
RETURNS table
AS BEGIN
RETURN select top 10 * from tblcountry
END
GO
这给了我一个错误 -
'start'附近的语法不正确。
我无法确定错误原因。
答案 0 :(得分:4)
更正inline UDF的语法:
内联用户定义函数遵循以下规则:
- BEGIN和END没有分隔的function_body。
- RETURN子句在括号中包含一个SELECT语句。
CREATE FUNCTION dbo.fntblPsmHaendlerDailyCostsinfodump(
@pDateString varchar(8),
@HaendlerID int,
@TableName varchar(100),
@CountryID int)
RETURNS table
AS
RETURN (select top 10 * from tblcountry);
GO
多语句UDF需要 BEGIN
和END
。