Bonjour,
j'ai une table
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 CREATE TABLE lesdates ( id integer auto_increment , ladate date not null, nb integer , primary key (id) );
avec les datas suivantes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 INSERT INTO lesdates (ladate,nb) values ('2013-05-01',2), ('2013-05-04',4), ('2013-05-05',13), ('2013-05-10',9);
Je fait cette requêtes :
j'obtiens le résultat suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT * FROM lesdates WHERE ladate between '2013-05-01' AND '2013-05-10' GROUP BY ladate;
avec des trous de dates car les dates n'existent pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 +----+------------+------+ | id | ladate | nb | +----+------------+------+ | 1 | 2013-05-01 | 2 | | 2 | 2013-05-04 | 4 | | 3 | 2013-05-05 | 13 | | 4 | 2013-05-10 | 9 | +----+------------+------+
Je voudrais savoir comment faire une requête avec un truc du style "INTERVAL 1 DAY" qui me sortirait toutes les dates, tout les 1 jours pour obtenir un résultat du style :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 +----+------------+------+ | id | ladate | nb | +----+------------+------+ | 1 | 2013-05-01 | 2 | | null | 2013-05-02 | null | | null | 2013-05-03 | null | | 2 | 2013-05-04 | 4 | | 3 | 2013-05-05 | 13 | | null | 2013-05-06 | null | | null | 2013-05-07 | null | | null | 2013-05-08 | null | | null | 2013-05-09 | null | | 4 | 2013-05-10 | 9 | +----+------------+------+
Partager