根据SQL Server中的第一行更新整个列

时间:2018-06-25 18:29:25

标签: sql sql-server

我在SQL Server表中有一列日期。这是一个固定的表,我现在为用户添加一个用于更改日期的表格。该列有大约200个日期,每行增加14天。如果第一个日期是2018年1月1日,则下一行是1-8-18,依此类推。

如果日期(和按钮)更改,我在表单上会有一个DatePicker,我希望该列中的所有行都更改,以使结果增加14天。我只想输入第一行,其余的都更改。

这在Excel中很简单,不知道如何在T-SQL中做到这一点。谢谢

1 个答案:

答案 0 :(得分:0)

嗨,这是一个起点。也许您可以找到一种更好的方法来填充或创建@AmountOfdays表,但这可以帮助您步入正轨。

DECLARE @AmountOfDays TABLE  
    ( RowNumberForExpand int );


Insert into @AmountOfDays (RowNumberForExpand) Values (1)
Insert into @AmountOfDays (RowNumberForExpand) Values (2)
Insert into @AmountOfDays (RowNumberForExpand) Values (3)

DECLARE @DateToEvaluate DATETIME = (Select [DateToTest] FROM   [dbo].[tablefortestingdates])

Select DATEADD(day,RowNumberForExpand * 14,@DateToEvaluate) as NewDate FROM @AmountOfDays