我试图在SQL下执行时收到此错误消息。Msg 178,Level 15,State 1,Line 8具有返回值的RETURN语句无法在此上下文中使用
错误:
Msg 156, Level 15, State 1, Line 5 Incorrect syntax near the keyword 'FUNCTION'. Msg 178, Level 15, State 1, Line 8 A RETURN statement with a return value cannot be used in this context.
SQL:
IF (NOT EXISTS (SELECT * FROM DBO.TRACKING WHERE CR = 123))
BEGIN
CREATE FUNCTION [dbo].[UDFDate]()
RETURNS DATETIME
AS BEGIN
RETURN CAST('9999-12-31' AS DATETIME)
END
END
不允许我里面的if语句创建一个函数?
这不是你如何调用一个函数。您将需要创建该函数然后调用它。同样看着你的功能,除了投射'9999-12-31'作为日期之外,它并没有真正做任何事情。为什么当你的日期是静态时你需要一个函数 –
我建议你阅读https://docs.microsoft.com/en-us/sql/t-sql/statements/create-function-transact-sql –