Page 1 sur 1

Selectioner uniquement le dernier enregistrement (mySQL)

Posté : 01 juin 2006, 02:52
par HanX
Je souhaite selectioner uniquement le dernier enregistrement d'une requete, sans utiliser limit. voilà ma requete actuelle (sans ce test)

Select *
From qcm
Where refPere='1'
Order by id

par exemple ça me renvoit 350 lignes... je veux juste la 350e 8)

Re: Selectioner uniquement le dernier enregistrement (mySQL)

Posté : 01 juin 2006, 02:57
par Hubert Roksor
Je souhaite selectioner uniquement le dernier enregistrement d'une requete, sans utiliser limit
Donc tu souhaites limiter le nombre d'enregistrements sans utiliser la fonction qui a été très spécifiquement désignée pour ? euh... c'est impossible, à part bien sûr si "refPere" est une clé unique.

Au fait, tu devrais essayer de formuler des questions plutôt que dire "je veux" et finir ton post par une formule du genre "merci d'avance" sinon ça va être mal pris par les gens qui prennent la peine de lire les forums pour y répondre, si tu vois ce que je veux dire :roll:

Posté : 01 juin 2006, 03:01
par HanX
si je trouve pas d'autre façons... je ferai des count(*) pour utiliser limit mais bon pas top :roll:

Posté : 01 juin 2006, 04:43
par Hubert Roksor
D'accord, je crois que je comprends ce que tu veux faire. Tu veux faire faire une liste de tous les enregistrements, les trier par ordre croissant puis tous les passer sauf le dernier, que tu veux récupérer. Ben dans ce cas il y a une chose très simple à faire: au lieu de les classer par ordre croissant et prendre le dernier de la liste (impossible sans connaitre la taille de la liste), tu les classes par ordre décroissant et tu prends le premier. Donc au lieu de faire "ORDER BY id", tu utilises "ORDER BY id DESC LIMIT 1".

De rien.

Posté : 01 juin 2006, 08:54
par sadeq
:pouce: +1 Hubert, adjujé pour ORDER BY id DESC LIMIT 1

Posté : 01 juin 2006, 13:22
par HanX
yeah merci 8)

Posté : 01 juin 2006, 13:35
par ouckileou
:!: Résolu :!: