Aller au contenu

Selection aléatoire RAND()


Sujets conseillés

Posté

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_type
FROM LIEU, TYPE, NATURE
WHERE LIEU.num_nature = NATURE.num_nature
AND LIEU.num_type = LIEU.num_type
ORDER 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

Posté

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 .

Posté

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

Posté

Y a pas de quoi.

en general quand çà ne veux vraiment pas marcher, copie colle dans phpmyadmin il te donnera directement la solution.

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...