7.3 Les données temporelles
177
© Dunod – La photocopie non autorisée est un délit.
est fusionnée pour former une ligne du résultat. La figure 7.3 nous permet de mieux
comprendre ce concept. Une telle suite est délimitée par les deux états C1 et C2 du
client concerné tels que :
1. C1 et C2 sont identiques (même valeur de CAT),
2. C1 est le premier de la suite, c’est-à-dire qu’il n’existe pas d’état C0 identique
qui précéderait directement C1,
3. C2 est le dernier de la suite, c’est-à-dire qu’il n’existe pas d’état C3 identique
qui suiverait directement C2,
4. les états du client entre C1 et C2 sont identiques à C1, c’est-à-dire qu’il n’existe
pas d’état C12 entre C1 et C2 qui leur serait différent.
Figure 7.3 - Notion de suite maximale d’états identiques. Les états C1 à C2 sont
fusionnés en un seul état maximal C
La traduction en SQL est la suivante.
select C1.NCLI, C1.debut, C2.fin, C1.CAT
from
H_CLIENT C1, H_CLIENT C2
where C1.NCLI=C2.NCLI and C1.CAT=C2.CAT
and
C1.debut <= C2.debut
and not exists (select *
from
H_CLIENT C0
where C0.NCLI = C1.NCLI
and C0.CAT = C1.CAT
and
C0.fin = C1.debut)
and not exists (select *
from
H_CLIENT C3
where C3.NCLI = C1.NCLI
and C3.CAT = C1.CAT
and
C2.fin = C3.debut)
and not exists (select *
from
H_CLIENT C12
where C12.NCLI = C1.NCLI
and
C12.CAT <> C1.CAT
and
C1.fin <= C12.debut
and
C12.fin <= C2.debut)
NCLI
debut
fin
C A T
C400
C400
C400
F011
F011
F011
03-11-1998
18-05-2000
07-04-2001
08-10-1997
12-03-2000
15-03-2001
18-05-2000
07-04-2001
01-01-3000
12-03-2000
15-03-2001
22-07-2001
B1
B2
C1
B1
B2
B1
T
C0
C1
C12
C2
C3
C
Précédent

- 177/436

Suivant