Aller au contenu

Faire une requete avec 2 requêtes


Sujets conseillés

Posté (modifié)

Bonjour,

J'ai 2 tables (table1 et table2) je recupère toutes les annonces (table1) et à chaque annonce, je récupere nom_img dont val_photo=2 de la table2

J'ai 2 requetes sql:

SELECT id_annonce, nom, ville, date_an FROM table1 ORDER BY id_annonce DESC

je récupère l'd_annonce puis je fais

SELECT nom_img, val_photo FROM table2 WHERE (val_photo=2 and id_annonce='" . $id_annonce . "')

Ca fonctionnement mais j'aimerais avoir qu'une seule requête

J'ai essayé de faire la requête ci-dessous

SELECT table1.id_annonce, table1.ville, table1.date_an, table2.nom_img, table2.val_photo FROM table1 LEFT JOIN table2 on table1.id_annonce = table2.id_annonce GROUP BY table1.id_annonce ORDER BY table1.id_annonce DESC

puis je test si val_photo=2

mais le problème si j'ai plusieurs ligne dans table2 pour une même annonce, il ne récupère que la 1ere ligne

Modifié par captain_torche
Posté

Bonjour,

ton test "val_photo = 2", tu le mets où ? Dans une clause "where" ou bien dans la clause de jointure (à la suite du "LEFT join xxx ON") ?

Posté (modifié)

je le fais après en php car je ne sais pas où le mettre dans la requête.

si les tables sont:

Table1:

id_annonce / nom / ville /date

1 / annonce1 / bruxelles / 11/1/09

Table1:

id_annonce / nom_img / val_photo

1 / photo1 / 0

1 / photo1 / 2

1 / photo1 / 0

j'aimerai récuperer la 1er ligne de la table 1 et la 2eme ligne de la table2

ps: j'avais oublié d'ajouter "GROUP BY table.id_annonce" dans la requete

Modifié par silverbeach
Posté

Bah fais le directement dans la requête alors, sur la clause de jointure (après le ON).

Si tu tiens à la version PHP, il faut accepter deux cas : si val_photo == 2 ou si val_photo === NULL (oui il y a bien 3 fois le symbol "égal" ici).

Posté

je viens de le mettre sur sur la clause de jointure et ça fonctionne.

Il n'y a pas longtemps que j'utilise des jointures dans mes requêtes sql et je commence à mieux comprendre le principe de fonctionnement

merci beaucoups Kioob

Veuillez vous connecter pour commenter

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



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