par
Cédricm » 10 juil. 2005, 13:40
Bonjour à tous,
Je recherche une requête permettant de sélectionner les nouvelles des 5 derniers jours (et non pas les 5 dernières nouvelles)
La table à la structure suivante :
Code : Tout sélectionner
CREATE TABLE IF NOT EXISTS nouvelles
(
idNou INTEGER NOT NULL AUTO_INCREMENT ,
idPos INTEGER NOT NULL ,
contNou TEXT NOT NULL ,
titreNou VARCHAR (255) NOT NULL ,
dateNou DATETIME NOT NULL
, PRIMARY KEY (idNou)
)
Pour simplifier la table se compose d'une date, d'un champ titre.
Sa donne par exemple :
10/10/2005 : News 9
9/10/2005 : News 8
9/10/2005 : News 7
8/10/2005 : News 6
7/10/2005 : News 5
6/10/2005 : News 4
6/10/2005 : News 3
5/10/2005 : News 2
4/10/2005 : News 1
La requête doit ici sélectionner :
10/10/2005 : News 9
9/10/2005 : News 8
9/10/2005 : News 7
8/10/2005 : News 6
7/10/2005 : News 5
6/10/2005 : News 4
6/10/2005 : News 3
Je pense qu'une telle requête est faisable sans passer par plusieurs requêtes, avec un GROUP BY. Seulement je ne m'y connais pas assez pour la trouver!
J'essaye des requêtes pour sa mais cela ne donne pas grand chose pour le momment, par exemple :
Code : Tout sélectionner
SELECT YEAR(dateNou), MONTH(dateNou), DAY(dateNou) , COUNT(idNou)
FROM nouvelles
GROUP BY YEAR(dateNou), MONTH(dateNou), DAY(dateNou)
ORDER BY dateNou DESC
LIMIT 0,5;
Qui donne le nombre de nouvelles sur chacun des 5 derniers jours.
Je continue a chercher....
Merci pour votre aide !
Bonjour à tous,
Je recherche une requête permettant de sélectionner les nouvelles des 5 derniers jours (et non pas les 5 dernières nouvelles)
La table à la structure suivante :
[code]CREATE TABLE IF NOT EXISTS nouvelles
(
idNou INTEGER NOT NULL AUTO_INCREMENT ,
idPos INTEGER NOT NULL ,
contNou TEXT NOT NULL ,
titreNou VARCHAR (255) NOT NULL ,
dateNou DATETIME NOT NULL
, PRIMARY KEY (idNou)
)[/code]
Pour simplifier la table se compose d'une date, d'un champ titre.
Sa donne par exemple :
10/10/2005 : News 9
9/10/2005 : News 8
9/10/2005 : News 7
8/10/2005 : News 6
7/10/2005 : News 5
6/10/2005 : News 4
6/10/2005 : News 3
5/10/2005 : News 2
4/10/2005 : News 1
La requête doit ici sélectionner :
10/10/2005 : News 9
9/10/2005 : News 8
9/10/2005 : News 7
8/10/2005 : News 6
7/10/2005 : News 5
6/10/2005 : News 4
6/10/2005 : News 3
Je pense qu'une telle requête est faisable sans passer par plusieurs requêtes, avec un GROUP BY. Seulement je ne m'y connais pas assez pour la trouver!
J'essaye des requêtes pour sa mais cela ne donne pas grand chose pour le momment, par exemple :
[code]SELECT YEAR(dateNou), MONTH(dateNou), DAY(dateNou) , COUNT(idNou)
FROM nouvelles
GROUP BY YEAR(dateNou), MONTH(dateNou), DAY(dateNou)
ORDER BY dateNou DESC
LIMIT 0,5;[/code]
Qui donne le nombre de nouvelles sur chacun des 5 derniers jours.
Je continue a chercher....
Merci pour votre aide !