CREATE FUNCTION [dbo].[udfGetNextEntityID]
()
RETURNS INT
AS
BEGIN
;WITH allIDs AS
(
SELECT entity_id FROM Entity
UNION SELECT entity_id FROM Reserved_Entity
)
RETURN (SELECT (MAX(entity_id) FROM allIDs )
END
GO
SQL は私の得意分野ではありませんが、ここで何が間違っているのかわかりません。関数が 2 つのテーブルの結合から最大の entity_id を返すようにします。スクリプトを実行すると、次のエラーが表示されます。
Incorrect syntax near the keyword 'RETURN'.
関数での CTE の使用に何らかの制限があるかどうかを確認しましたが、関連するものは見つかりませんでした。これを修正するにはどうすればよいですか?