aide pour un requête un peu spéciale - Version imprimable +- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org) +-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38) +--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51) +--- Sujet : aide pour un requête un peu spéciale (/showthread.php?tid=3788) |
aide pour un requête un peu spéciale - php_addict - 11-11-2010 bonjour je me permet de solliciter votre aide sur une requête un peu spéciale, je vais simplifier mon exemple au maximum pour une meilleur compréhension du smilblick : voici la table nommée "matable" Je possède déjà la liste des village_id qui m'intéressent , exemple:
je voudrais récupérer les lignes suivant ces critères: - les lignes dont village_id est dans la liste $liste - et uniquement une seule ligne par élément de la liste $liste - et dont le time est le plus récent... graphiquement voici ce que je souhaite récupérer : je ne vois pas du tout comment m'y prendre en une seule requête? une requête imbriquée peut être? je vous remercies par avance d'avoir lu ce message et de tenter d'y trouver une solution, et j'espère avoir été assez clair... bonne fin de journée ! RE: aide pour un requête un peu spéciale - atra27 - 11-11-2010 Je dirais... ORDER BY time LIMIT 1 A tester avec ORDER BY DESC ou pas... Et penser a mettre un index sur time Sa marche? RE: aide pour un requête un peu spéciale - Myrina - 11-11-2010 Aucune garantie mais je verrai bien une requête du style
Attention, cette requête ne fonctionnera que si le couple (village_id,time) est unique; sinon le sous select peut renvoyé un ensemble, ce qui est incompatible avec un opérateur =. RE: aide pour un requête un peu spéciale - niahoo - 12-11-2010 avec 'group by' ça te permetra de sélectionner le time maximum pour chaque village, par contre je ne sais pas si ça pourra te retourner le champ 'id' correctement. RE: aide pour un requête un peu spéciale - srm - 12-11-2010 Comme toujours pour ce genre de question, merci de donner un dump du schéma et des données Pour mySQL :
Et sur Postgresql :
RE: aide pour un requête un peu spéciale - php_addict - 12-11-2010 merci à vous, je n'utilise que rarement MAX et GROUP BY et vous m'avez mis sur le bonne piste encore merci RE: aide pour un requête un peu spéciale - srm - 12-11-2010 On voit aussi que c'est bien plus propre avec Postgresql RE: aide pour un requête un peu spéciale - Myrina - 13-11-2010 Juste pour info, c'est possible d'avoir la requête produite à partir de nos conseils? RE: aide pour un requête un peu spéciale - php_addict - 14-11-2010 (13-11-2010, 10:00 PM)Myrina a écrit : Juste pour info, c'est possible d'avoir la requête produite à partir de nos conseils? euh oui bien sur, c'est un truc du genre
ma requête est en réalité beaucoup plus complexe car il y a beaucoup de jointures additionnelles, et l'exemple que j'ai fournit plus haut était un exemple extrêmement simplifié de mes besoins RE: aide pour un requête un peu spéciale - srm - 14-11-2010 Je ne vois pas comment ça peut convenir à ton besoin ce que tu montres ^^ |