Ho una tabella con record per ogni ora consecutiva. Ogni ora ha qualche valore. Voglio una query T-SQL per recuperare i record mancanti (ore mancanti, le lacune). Quindi, per il DDL di seguito, dovrei ottenere un record per l'ora mancante 04/01/2010 02:00 (supponendo che l'intervallo di date sia compreso tra il primo e l'ultimo record). Utilizzo di SQL Server 2005. Preferire una query basata su set.Trovare lacune (record mancanti) nei record del database utilizzando SQL
DDL:
CREATE TABLE [Readings](
[StartDate] [datetime] NOT NULL,
[SomeValue] [int] NOT NULL
)
INSERT INTO [Readings]([StartDate], [SomeValue])
SELECT '20100401 00:00:00.000', 2 UNION ALL
SELECT '20100401 01:00:00.000', 3 UNION ALL
SELECT '20100401 03:00:00.000', 45
OMG .... che è fenomenale di come veloce è stato scritto da. Semplicemente fantastico. – Raja
Non posso salire o scendere votare perché sto guardando questo sql andando .. gaaaaahhahahaaaa –
Questa è una domanda dolce. Non ho mai realizzato che 'WITH' potesse essere usato ricorsivamente. – RedFilter