J'ai une table qui définit les intervalles de temps.Requête pour sélectionner des intervalles dans une table
_______________________________
| id | description | start_date |
|____|_____________|____________|
| 1 | First | NULL |
| 3 | Third | 2009-12-18 |
| 5 | Second | 2009-10-02 |
| 4 | Last | 2009-12-31 |
|____|_____________|____________|
Il ne stocke que la date de début, la date de fin est un jour avant la date suivante qui suit.
Je voudrais avoir le résultat suivant:
____________________________________________
| id | description | start_date | end_date |
|____|_____________|____________|____________|
| 1 | First | NULL | 2009-10-01 |
| 5 | Second | 2009-10-02 | 2009-12-17 |
| 3 | Third | 2009-12-18 | 2009-12-30 |
| 4 | Last | 2009-12-31 | NULL |
|____|_____________|____________|____________|
Comment devrais-je écrire cette requête, car une ligne contient des valeurs d'autres lignes?
(je pense que la fonction MySQL DATE_SUB
pourrait être utile.)
retourne les lignes en double –
Quelles lignes dupliquées obtenez-vous? Plus d'une ligne pour un identifiant? Le GROUP BY devrait éviter cela ... –
Désolé, j'avais tort. Ça marche. Merci beaucoup. –