Page 1 sur 1

Union d'intervalles de dates

Posté : 26 nov. 2012, 20:57
par pierre42
Bonjour,

J'ai une table avec (en gros) 3 champs : un Id, un champ DateDebut et un champ DateFin.

ça me fait donc une liste d'intervalles de dates différents.

comment puis-je faire pour obtenir l'union ou l'intersection de ces intervalles (ou d'une partie) en SQL ?

je ne trouve rien dans les fonctions de dates qui gère ça.

(j'utilise SQL Server 2008).

Merci d'avance,

Re: Union d'intervalles de dates

Posté : 27 nov. 2012, 00:11
par AB
Donnes-vous un exemple concret de ce que tu veux faire.

Re: Union d'intervalles de dates

Posté : 27 nov. 2012, 11:28
par pierre42
Je vous donne un exemple.

Prenons comme données (id, date1, date2) :

1, 03/05/2005, 12/11/2005
2, 04/08/2005, 02/05/2006
3, 23/04/2006, 30/03/2007
4, 24/07/2007, 17/02/2008
5, 23/06/2008, 31/12/2008

l'union pour id <= 3 donne 03/05/2005, 30/03/2007
l'union pour id in (3, 4) donne 23/04/2006, 30/03/2007 et 24/07/2007, 17/02/2008

l'intersection pour id <= 2 donne 04/08/2005, 12/11/2005
l'intersection pour id >= 3 donne NULL