Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

SQL Server 2008 seleziona solo i dati tra il mese e l'anno

La tua prima soluzione è quasi arrivata, ma è più complicata del necessario e comunque non funzionerà. Mancheranno tutte le righe dell'ultimo giorno del mese di fine mese.

Puoi aggiungere un mese al end month e poi usa BETWEEN il primo di ogni mese. es.

start month: 9 , start year: 2011 end month: 3, end year: 2012

BETWEEN '2011-09-01' AND '2012-04-01'

o, come sottolinea JNK, sarà meglio:

DataDelega >= '2011-09-01' AND DataDelega < '2012-04-01'

Dovrai aggiungere un po' di logica per gestire il end month essendo dicembre, ma questo sembra il modo più semplice per farlo.