我的表包括开始时间,到目前为止的时间,结束时间列,所以我想通过按开始时间减去现在时间来计算所有行的时间,但它只影响一行,我想影响所有行。
代码:
create procedure timetillnow
declare @starttime time,
@nowtime time,
@diff time
select @starttime = starttime from schedule
select @nowtime = GETDATE()
select @diff = DATEDIFF(MINUTE,@starttime,@nowtime)
update schedule set timetillnow = @diff
答案 0 :(得分:1)
只需在没有where
子句的单个更新语句中执行此操作:
update schedule set timetillnow = DATEDIFF(MINUTE,starttime,getdate())
这将更新表格中的每一行。