• [^] # Re: jointure

    Posté par . En réponse au message RAND() dans un SubSelect : comportement étrange. Évalué à 4.

    le nom des champs importe peu c'est pour la logique plus que la pratique.

    ce qui me choque dans ton algo, c'est que tu :
    - cherche une peinture au hazard (ton p_random)

    • lie le resultat à la galerie qui va ( from galeries gal)

    • ou tu refais une jointure sur la table des peintures

    tu pourrais surement faire comme je le propose, sans le limit1 mais avec un group by

    SELECT galerie.id as id_galerie, galerie.nom as nom_galerie,peinture.id, peinture.nom .... 
    FROM peintures LEFT JOIN galerie ON galerie.id=peinture.galerie_id 
    ORDER by RAND() 
    GROUP BY galerie.id

    le regroupement va forcer le fait qu'il n'y aura qu'une seule ligne pour chaque galerie, et c'est la derniere (ou la premiere je ne sais plus) ligne de peinture pour cette galerie qui sera retenue.