使用下面的代码,我想做一个“切换”,检查字段值并根据值设置另一个字段。我必须为每一行做这个,然后它在光标中。但缺少一些东西......
感谢您的帮助
DECLARE @Res int
OPEN MyCursor;
FETCH NEXT FROM MyCursor
INTO @field1, @field2, @field3, @field4
WHILE @@FETCH_STATUS = 0
BEGIN
SELECT
CASE @field1
WHEN 'A' THEN @Res = 1
WHEN 'B' THEN @Res = 2
WHEN 'C' THEN @Res = 3
WHEN 'D' THEN @Res = 4
WHEN 'E' THEN @Res = 5
END
FETCH NEXT FROM MyCursor
INTO @field1, @field2, @field3, @field4
END
CLOSE MyCursor;
答案 0 :(得分:3)
要解决您的问题,请执行以下操作:
SELECT @Res =
CASE @field1
WHEN 'A' THEN 1
WHEN 'B' THEN 2
WHEN 'C' THEN 3
WHEN 'D' THEN 4
WHEN 'E' THEN 5
END
你想用@Res做什么?为什么你认为你需要一个光标?