我在使用select语句在CASE语句中设置返回值时遇到了问题...有没有人可以看一下?
DECLARE @SystemTypeId int
SELECT @SystemTypeId = [SystemTypeId] FROM [Properties] WHERE [Id] = @PropertyId
SET @RETURN_VAL =
CASE @SystemTypeId
WHEN 2 THEN (SELECT [Created] FROM [Assets] WHERE [Id] = @AssetId)
WHEN 3 THEN (SELECT dbo.GetAssetValueById([CreatedBy])
FROM [Assets]
WHERE [Id] = @AssetId)
WHEN 9 THEN (SELECT [LastModified]
FROM [Assets]
WHERE [Id] = @AssetId)
ELSE NULL
END发布于 2011-09-03 03:45:10
试试这个:
SELECT @RETURN_VAL =
CASE @SystemTypeId
WHEN 2 THEN [Created]
WHEN 3 THEN dbo.GetAssetValueById([CreatedBy])
WHEN 9 THEN [LastModified]
ELSE NULL
END
FROM [Assets]
WHERE [Id] = @AssetIdhttps://stackoverflow.com/questions/7288494
复制相似问题