Cherche bonne commande SQL

Bonjour,
J'ai un p'tit peu de mal à construire ma requête MySQL pour faire ce que je veux faire...

J'ai 2 tables : "articles_tags" et "tags"
dans "articles_tags" j'ai "id_art" et "id_tag" qui lie un tag ou plusieurs tags à un article
dans "tags" j'ai "id_tag" (primaire) et "libelle" qui associe un nom de tag à son identifiant.

J'aimerais récupérer les noms de libellés associé à un article précis...
je pourrais le faire en sélectionnant les id_tag de l'article puis de faire une boucle en récupérant par la suite le libellé du tag... mais je cherche un moyen "plus simple" en SQL...

Merci de votre aide ;)
Configuration: Windows XP
Firefox 2.0.0.13

4 réponses

  1. Bonjour je te conseil :

    SELECT libelle FROM tags LEFT OUTER JOIN articles_tags ON id_tag = id_tag WHERE id_art = variable dYnamique ton choix

    Sa devrait marcher.

    Mais fait a attention a t'es nom de champs.
    0
    1. Merci d'avoir répondu mais malheureusement ça ne fonctionne pas :(
      0
      1. apparemment j'ai trouvé la formule qui fonctionne ^^
        "SELECT tags.libelle FROM tags, articles_tags WHERE tags.id_tag=articles_tags.id_tag AND articles_tags.id_art=VARIABLE"

        mais c'est bizarre, JOIN doit être fait pour ça non ?
        0
        1. Contributeur
          C'est pas bizarre, c'est une jointure assez classique... Qu'est ce que tu vois de bizarre là-dedans ?
          0
        2. @HostOfSeraphimce qui est bizarre c'est d'utiliser des WHERE alors que JOIN est censé servir à ça, non ?
          0
        3. Contributeur
          @bartholomeyLe JOIN est utile pour des grosses jointures, mais pour une jointure "toute bête", un WHERE est vite fait et tout simple.

          0
        4. @HostOfSeraphimahh d'accord, merci pour les explications :)
          0
      2. oui normalement il sert ça.

        Ce qui est encor plus bizarre c'est mon sql server me dit que la requette est correct.
        ^^ va savoir.
        0