Bonjour à tous,
Je suis confronté à un problème qui semble simple, de prime abord. Seulement, après réflexion, il s'avère plus difficile qu'il n'y parait. Je sèche...
Voici le problème :
Je dispose d'une table qui présente trois colonnes :
- La colonne "idex" : Une clé primaire, auto incrémentée.
- La colonne "clock" : Une date (de type DATETIME).
- La colonne "value" : Un entier non signé.
Je désire sélectionner les plages temporelles (déterminées par un couple de valeurs de la colonne "clock") sur lesquelles les valeurs de la colonne "value" sont croissantes.
Exemple :
Résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 idex clock value 1 2010-01-01 00:00:00 1 2 2010-01-01 00:00:01 1 3 2010-01-01 00:00:02 1 4 2010-01-01 00:00:02 10 5 2010-01-01 00:00:02 1 6 2010-01-01 00:00:03 2 7 2010-01-01 00:00:04 3 8 2010-01-01 00:00:05 4 9 2010-01-01 00:00:06 1
- Première plage : [de 2010-01-01 00:00:00 (id=1) à 2010-01-01 00:00:02 (id=4)]
- Deuxième plage : [de 2010-01-01 00:00:02 (id=5) à 2010-01-01 00:00:05 (id=8)]
- Troisième plage : [de 2010-01-01 00:00:06 (id=9) à 2010-01-01 00:00:06 (id=9)]
Remarque : Je ne suis pas certain que l'on puisse effectuer cette opération en utilisant du SQL uniquement.
Si vous pouvez me mettre sur la piste, je vous en serais reconnaissant!
Note: Je travaille avec MySql.
Merci,
Denis
Partager