我必须City.Date在City表中更新,我在表中有列,例如City表中的Interval和Period.
Interval列包含yy,ww,dd,qq等值,Period列包含1,2,3等值.
我想这样更新City.Date:
UPDATE City
SET City.date = DATEADD(City.Interval, City.Period, City.date)
WHERE CityId = 13
Run Code Online (Sandbox Code Playgroud)
它得到的错误如下:
City.Interval无法识别DATEADD选项.
我如何更新City.Date使用City.Interval,City.Period和City.date?
gbn*_*gbn 15
您无法参数化间隔位
UPDATE City
SET date = CASE Interval
WHEN 'yy' THEN DATEADD(yy, Period, date)
WHEN 'ww' THEN DATEADD(ww, Period, date)
WHEN 'dd' THEN DATEADD(dd, Period, date)
WHEN 'qq' THEN DATEADD(qq, Period, date)
WHEN ...
END
WHERE CityId =13
Run Code Online (Sandbox Code Playgroud)