requete sql : problème de selection de date

Répondre
exter666
exter666
Déconnecté
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
bonjour,

J'ai une table avec différents champs. l'un de ces champs est un champ avec une date, je voudrais selectionner la ligne avec la date la plus récente.

J'avais pensé a la requete suivante:
SELECT name, max(date) FROM table GROUP BY name

mais cela ne marche pas (les lignes retournées ne correspondent pas a ce que j'attends)

d'avance merci pour votre aide
LA GLOBULE
LA GLOBULE
Déconnecté
111 111 111 x 111 111 111 = 12 345 678 987 654 321
SELECT name, date FROM table ORDER BY date DESC LIMIT 1
exter666
exter666
Déconnecté
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
oki et si jamais je veux selectionner tous les dates les plus récentes mais seulement une pour chaque nom!
LA GLOBULE
LA GLOBULE
Déconnecté
111 111 111 x 111 111 111 = 12 345 678 987 654 321
Ta première requete était bonne alors.

Ou alors, tu n'arrives pas à exprimer ce que tu veux vraiment, mais ta première requete dit :

"Je veux, pour chaque name, la date la plus récente."

Ce n'est pas ça que tu veux ?
exter666
exter666
Déconnecté
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
j'ai du mal a exprimer ce que je veux.

je voudrais qu'il me renvoit la ligne de ma table qui correspond a la date la plus recente!
LA GLOBULE
LA GLOBULE
Déconnecté
111 111 111 x 111 111 111 = 12 345 678 987 654 321
Bon, ben ce que tu viens de dire correspond à :

SELECT name, date FROM table ORDER BY date DESC LIMIT 1

Mais visiblement, ce n'est pas ça que tu veux...

Tu n'aurais pas un exemple plus concret de ce que tu veux ?
Montre nous un bout de ta table, et dis nous les lignes que tu voudrais voir ressortir.
exter666
exter666
Déconnecté
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
oki desole de pas etre tres clair
voici un exemple

marc / 2006-10-24 / coucou
globule / 2006-10-25 / test
marc / 2006-10-25 / test

et je voudrais que ma requete ressorte:
la ligne avec globule et la derniere ligne

result requete =
globule / 2006-10-25 / test
marc / 2006-10-25 / test
LA GLOBULE
LA GLOBULE
Déconnecté
111 111 111 x 111 111 111 = 12 345 678 987 654 321
Ben ta première requête est bonne alors :)

Si elle ne retourne pas ces lignes la, c'est que ta date ne doit pas être un champ de type date.
Vérifie le.
exter666
exter666
Déconnecté
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
et euh bete question, pourquoi mon champ doit etre de type date???
exter666
exter666
Déconnecté
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
et euh bete question, pourquoi mon champ doit etre de type date???
exter666
exter666
Déconnecté
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
le probleme c'est qu'il ne me retourne pas les autres champs... (j'ai bien le nom, la date, mais les autres champs ne corrsepondent pas)
LA GLOBULE
LA GLOBULE
Déconnecté
111 111 111 x 111 111 111 = 12 345 678 987 654 321
ben si tu veux les autres champs, selectionne les dans ton SELECT (et c'est important de stocker une date dans un champs date, car comme ca, tu peux calculer des trucs sur tes dates, avec les fonctions date de mysql).
exter666
exter666
Déconnecté
Suis une grosse bête!!! enfin faut s'entendre sur le mot bête.
non je voulais dire que malgré que j'ai fait un select des autres champs, la valeur renvoyée ne correspond pas à la valeur sur la ligne de la date voulue
Répondre
Accès rapide :

Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Php - Breizh Blog