Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1181 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  comment obtenir les 3 dernières entrées d'une table?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

comment obtenir les 3 dernières entrées d'une table?

n°1187173
damcmoi
Posté le 29-08-2005 à 15:47:54  profilanswer
 

Salut, je suis novice :)
 
j'ai une table en mysql:
un|deux|trois|quatre|cinq|six|sept|huit|neuf|dix
ma clé va de 1 pour "un" à 10 pour "dix".
 
je veux obtenir les 3 derniers éléménts de la table : huit|neuf|dix.
Le pb c'est que si je fais:

select * from table order by clé desc limit 0,3


j'obtiens dix|neuf|huit.
Quelqu'un peut il me dire comment faire?
merci :)


Message édité par damcmoi le 29-08-2005 à 15:54:47
mood
Publicité
Posté le 29-08-2005 à 15:47:54  profilanswer
 

n°1187175
WhatDe
Posté le 29-08-2005 à 15:50:04  profilanswer
 

order by clé asc ?


---------------
[:whatde]
n°1187177
damcmoi
Posté le 29-08-2005 à 15:53:23  profilanswer
 

non car il fera dans l'ordre :
un|deux|trois
 
Merci pour ton aide :)

n°1187181
WhatDe
Posté le 29-08-2005 à 15:56:57  profilanswer
 

Heu oui c'est logique [:whatde]
Essayes  
SELECT * FROM table WHERE clé IN (select * from table order by clé desc limit 0,3) ORDER BY clé ...
si tu peux le faire.
Maintenant y'a peut-être plus propre.


Message édité par WhatDe le 29-08-2005 à 15:57:23

---------------
[:whatde]
n°1187186
damcmoi
Posté le 29-08-2005 à 16:01:53  profilanswer
 

heu...
non ça marche pas. Message d'erreur de sous requête non supportée avec IN et LIMIT avec ma version de mysql.
Merci pour ton inspiration :).
Quelqu'un a une autre idée?
 
Yaurait pas une variable qui dit combien on a d'entrées dans la table?
Merci


Message édité par damcmoi le 29-08-2005 à 16:03:29
n°1187215
Ttienne
C'est pas pour me vanter, mais
Posté le 29-08-2005 à 16:43:40  profilanswer
 

count(*) pourquoi ? [:pingouino]


---------------
Y a de la bière, sur Véga, hein ? Si y'en a pas, on y va pas ! Et pis c'est tout ! :P | c'est vendu depuis lgtps
n°1187222
damcmoi
Posté le 29-08-2005 à 16:48:42  profilanswer
 

parce que dans mon problème yaurait pas moyen de mettre un truc du genre:

limit count(*)-3,count(*)


pour lister les 3 dernières enntrées?
 
Je galère depuis 1h30 et j'arrive pas à résoudre mon problème....


Message édité par damcmoi le 29-08-2005 à 16:50:16
n°1187803
damcmoi
Posté le 30-08-2005 à 14:35:42  profilanswer
 

up, siouplai c'est important pour moi.
ou alors peut être un changement de clé pour y parvenir?
Si qq'un a une idée, merci.

n°1187912
sielfried
Posté le 30-08-2005 à 16:13:28  profilanswer
 

Fait ça en deux requêtes. :spamafote:


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1187921
casimimir
Posté le 30-08-2005 à 16:19:15  profilanswer
 

SELECT * FROM table t1 WHERE t1.clé IN (select t2.clé from table t2 limit 0,3) ORDER BY t1.clé
 
ha oué non j'avais pas vu pour les sous-requetes non supportées...


Message édité par casimimir le 30-08-2005 à 16:20:12
mood
Publicité
Posté le 30-08-2005 à 16:19:15  profilanswer
 

n°1188026
mrbebert
Posté le 30-08-2005 à 17:29:56  profilanswer
 

damcmoi a écrit :

parce que dans mon problème yaurait pas moyen de mettre un truc du genre:

limit count(*)-3,count(*)


pour lister les 3 dernières enntrées?
 
Je galère depuis 1h30 et j'arrive pas à résoudre mon problème....

non, à moins de passer d'abord une requête qui compte le nombre de lignes, puis d'utiliser le résultat pour construire la 2ème requête [:proy]  

n°1188036
toutoune
Posté le 30-08-2005 à 17:37:07  profilanswer
 

et pourquoi ne pas faire après un tri inverse dans le langage que tu utilise pour exploiter ta BD?
 
Par exemple en PHP un array_reverse ()...
Mais bon on sort de MySQL là...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  comment obtenir les 3 dernières entrées d'une table?

 

Sujets relatifs
CREATE TABLE ... boolean field with format YesNo[ActiveX] obtenir le Temp de l'utilisateur ?
[Oracle] Urgent !!Erreur ORA-01653: impossible d'étendre la table...table MySQL dans tableau (à 2 dimensions?)
[MySQL & PHP] Obtenir les valeurs que peut prendre un champs SETcreate table table1 as .... en access
Entrees sorties avec un fichierRequete avec 2 champs identiques sur une table
Prob -> Génération d'une tableSQL Server - Connaitre noms dernieres tables modifiees
Plus de sujets relatifs à : comment obtenir les 3 dernières entrées d'une table?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR