我需要编写一个更新,该更新需要用户输入文本(如下)并运行有效的更新(需要这样做)。我认为我需要使用某种类型的循环或游标。参考列可能有其他文本,而不仅仅是“燃料=?”。用户知道格式必须是 'FUEL=?' 使此更新生效。我目前无法向表中添加附加列。我是新来的……谢谢你的帮助!!
用户输入将如下:
燃料组 = A, C
新附加费 = 2
需要这样做
update tblroutes
set DriverSurcharge = 2
where Reference like '%FUEL=A%' or Reference like '%FUEL=C%'
表开始
路线ID | 参考 | 附加费
F01 | Windows 燃料=A | 0
F02 | 燃料=A | 0
F03 | 燃料=B | 0
F04 | 赢得 8 燃料=B | 0
F05 | 燃料=C | 0
F06 | 燃料=C MAC | 0
F07 | 燃料=D | 0
想要的最终结果
路线ID | 参考 | 附加费
F01 | Windows 燃料=A | 2
F02 | 燃料=A | 2
F03 | 燃料=B | 0
F04 | 赢得 8 燃料=B | 0
F05 | 燃料=C | 2
F06 | 燃料=C MAC | 2
F07 | 燃料=D | 0
我可以一次更新 1 个“燃料组”,但希望用户能够一次将更新运行到他们想要的任意数量的组。
DECLARE @Surcharge INT
DECLARE @Group Varchar
--This will give the user a input box for surcharge amount
--SET @Surcharge= '<< Please enter surcharge amount. >>'
----This will give the user a input box for fuel group(s)
--SET @Group= '<< Please enter fuel group(s). >>'
--If the user entered 4 & A
SET @Surcharge= '4'
SET @Group= 'A'
update tblroutes
set DriverSurcharge = @Surcharge
where Reference like '%FUEL='+@Group+'%'
现在如果用户输入 Fuel Group = A, C 我该如何处理