sql >> Databasteknik >  >> RDS >> Sqlserver

SQL Server 2008 Generera en serie datumtider

Använd en rekursiv CTE

declare @StartTime datetime = '2011-07-20 11:00:33',
    @EndTime datetime = '2011-07-20 15:37:34',
    @Interval int = 554 -- this can be changed.

;WITH cSequence AS
(
    SELECT
       @StartTime AS StartRange, 
       DATEADD(SECOND, @Interval, @StartTime) AS EndRange
    UNION ALL
    SELECT
      EndRange, 
      DATEADD(SECOND, @Interval, EndRange)
    FROM cSequence 
    WHERE DATEADD(SECOND, @Interval, EndRange) < @EndTime
)
 /* insert into tmp_IRange */
SELECT * FROM cSequence OPTION (MAXRECURSION 0);


  1. Standarder för datum/tid tillägg?

  2. MySQL Välj Senaste rad med specifikt värde

  3. Tabellen är för bred för att passa i Markdown-genererad PDF

  4. rails + MySQL på OSX:Biblioteket är inte laddat:libmysqlclient.18.dylib