Query per ottenere un intervallo di date

lunedì 19 gennaio 2009 - 12.20

livio Profilo | Newbie


DECLARE @end DATETIME
SET @end = '2009-02-17'

With Dates(dataRic)
AS
(
SELECT @start dataRic
UNION ALL
SELECT (dataRic+1) dataRic FROM Dates WHERE dataRic < @end
)
SELECT DataRic as Data from Dates
OPTION(MAXRECURSION 0) [/code]

Qualche suggerimento???


grazie livio

lbenaglia Profilo | Guru

>Qualche suggerimento???
Per cosa?

Vuoi sapere se funziona?
A me si:

DECLARE @start datetime = '20090201' , @end datetime = '20090217'; WITH Dates(dataRic) AS ( SELECT @start UNION ALL SELECT dataRic +1 FROM Dates WHERE dataRic < @end ) SELECT DataRic AS Data FROM Dates OPTION(MAXRECURSION 0); /* Output: Data ----------------------- 2009-02-01 00:00:00.000 2009-02-02 00:00:00.000 2009-02-03 00:00:00.000 2009-02-04 00:00:00.000 2009-02-05 00:00:00.000 2009-02-06 00:00:00.000 2009-02-07 00:00:00.000 2009-02-08 00:00:00.000 2009-02-09 00:00:00.000 2009-02-10 00:00:00.000 2009-02-11 00:00:00.000 2009-02-12 00:00:00.000 2009-02-13 00:00:00.000 2009-02-14 00:00:00.000 2009-02-15 00:00:00.000 2009-02-16 00:00:00.000 2009-02-17 00:00:00.000 (17 row(s) affected) */

>grazie livio
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

livio Profilo | Newbie

Si avevo fatto delle prove e visto che funzionava..... ma va bene per sql 2005 con il 2000 non va... in + mi servirebbe una cosa più sql Standard da utilizzare per es. anche su Sybase :(



grazie



Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5