jiojio Posté 21 Février 2007 Posté 21 Février 2007 Bonjour, j'ai un site immobilier et sur ma page principale j'ai une selection aléatoire de mes ventes ou locations. Mes lieux ont un et un seul type (appartement, maison, garage...) et d'une nature (vente ou location) donc 3 tables pour cette requetes : LIEU, TYPE, NATURE j'ai fait comme ça : Code : SELECT LIEU.*, TYPE.nom_typeFROM LIEU, TYPE, NATUREWHERE LIEU.num_nature = NATURE.num_natureAND LIEU.num_type = LIEU.num_typeORDER BY RAND()LIMIT 1 le probleme avec cette requete c'est que le random se fait bien mais il me le fait sur la ref du lieu mais également sur le num_type donc je peux avoir un lieu de ref 1001 avec un type APPARTEMENT et en rafraichissant la page avoir le même lieu avec un type MAISON... comment faire ? merci d'avance
loxi Posté 21 Février 2007 Posté 21 Février 2007 J'avoue ne pas comprendre l'utilité du: "AND LIEU.num_type = LIEU.num_type"
astrofiles Posté 21 Février 2007 Posté 21 Février 2007 Cela ne sera pas beaucoup plus gourmand en terme de ressource mais décomposer en deux étapes tes requêtes devrait résoudre ton problème Sous réserve d'avoir bien compris la finalité de tes tables ca donnerait : 1) requete aleatoire sur la table des lieux (avec le rand ) 2) avec l'id du lieu récupéré par la première requete tu faits ta requete sur les 3 tables qui récupère la nature et le type .
jiojio Posté 21 Février 2007 Auteur Posté 21 Février 2007 Merci loxi voilà pourquoi ça plantait c'est TYPE.num_type astrofiles je l'ai fait en 2 et ça fonctionne nikel maintenant ! merci les gars
loxi Posté 21 Février 2007 Posté 21 Février 2007 Y a pas de quoi. en general quand çà ne veux vraiment pas marcher, copie colle dans phpmyadmin il te donnera directement la solution.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant