sql >> Database >  >> RDS >> Sqlserver

SQL Server 2008 Genereer een reeks datumtijden

Gebruik een recursieve 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. Door Docker samengestelde omgevingsvariabelen

  2. MySQL-code converteren naar Access:GROUP_CONCAT en een triple JOIN

  3. Prestaties van recursieve opgeslagen procedures in MYSQL om hiërarchische gegevens te verkrijgen

  4. Een primaire sleutel toevoegen aan een bestaande tabel in SQL Server (T-SQL-voorbeelden)