我正在尝试循环我的值,以便我的结果看起来像
ETA ETD
01/01/2013 03/01/2013 //Adding Days according to condition, Here 1 day
03/01/2013 06/01/2013 //Add 3 days
06/01/2013 18/01/2013
18/01/2013 21/01/2013
在这里我需要循环值,以便我的值在下一行重复
为此,我已经完成了我的工作
CREATE TABLE #TEMPETAETD(ROWNUM INT,ETA DATETIME,ETD DATETIME)
CREATE TABLE #TEMPETD(ID INT IDENTITY(1,1),ETD DATETIME,ROWNUM INT)
CREATE TABLE #TEMPETA(ID INT IDENTITY(1,1),ETA DATETIME,ROWNUM INT)
;WITH cte AS(
SELECT Row_Number() OVER(ORDER BY Sequence)AS RowID,@ETA AS ETA,DATEADD(DD,vd.NumHaltDays,@ETD) as ETD FROM VoyageDetails vd WHERE ID=1 and vd.Sequence BETWEEN 0 AND 1)
INSERT INTO #TEMPETAETD select * from cte
DECLARE @C INT,@C1 INT
SET @C=1
WHILE @C<(SELECT COUNT(*) FROM #TEMPETAETD)
BEGIN
INSERT INTO #TEMPETA SELECT * FROM #TEMPETAETD WHERE ROWNUM=@C
SET @C=@C+1
END
SET @C1=2
WHILE @C1<=(SELECT COUNT(*) FROM #TEMPETAETD)
BEGIN
INSERT INTO #TEMPETD SELECT * FROM #TEMPETAETD WHERE ROWNUM=@C1
SET @C1=@C1+1
END
这是我循环的条件......,在这里我无法让我的重复值出现在下一行..,任何人都可以帮忙