Partage
  • Partager sur Facebook
  • Partager sur Twitter

Jointure

    27 novembre 2010 à 16:50:58

    Bonjour,

    je viens de m'attaquer aux jointures, & je dois dire, que j'ai plutôt du mal ^^
    J'ai 2 table :
    id url titre
    1 http:// test
    2 http:// test1


    playlistID musicID
    1 1
    1 2


    & j'aimerais recuperer le titre de la 1er base en fonction de musicID de la seconde. J'ai donc fait ceci :
    SELECT music.titre,
    FROM music, playlistmusic
    WHERE playlistmusic.musicID = music.titre;
    

    Pourriez-vous m'aider ?
    • Partager sur Facebook
    • Partager sur Twitter
      27 novembre 2010 à 16:58:28

      Déjà, tu utilises la vieille syntaxe des jointures, préfère la nouvelle avec INNER JOIN.

      Ensuite, il faut comprendre les conditions de jointure. Tu compares playlistmusic.musicID, qui est un entier, avec music.titre, qui est une chaîne de caractères. Évidemment, ça ne risque pas de fonctionner.

      Tu veux comparer playlistmusic.musicID à music.ID (note que par convention, on donne le même nom aux colonnes qui contiennent la même chose, donc je renommerais id en musicID), il faut donc faire comme ceci :

      --
          SELECT M.titre
            FROM music M
      INNER JOIN playlistmusic P
              ON P.musicID = M.id;
      
      • Partager sur Facebook
      • Partager sur Twitter
        28 novembre 2010 à 15:40:33

        Salut je te propose :
        SELECT titre from music
        inner join playmusic on music.id = playmusic.musicid
        


        • Partager sur Facebook
        • Partager sur Twitter

        Jointure

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown