3 Replies Latest reply: Aug 26, 2014 9:51 AM by sab ben RSS

    Left join et if?

           Bonjour,

      j'ai un gros problème sur lequel je bute !

       

      Voilà en gros j'ai une table où j'ai 3 champs

       

      Nom  Prenom Ville

       

       

      Et J'ai une autre table où j'ai

       

      Nom Prenom  Ville Distance1 Distance2

       

       

      En gros je voudrais joindre les  champs Distance 1 et Distance 2 dans la table du dessus, cependant il faut que les trois conditions soient reunies c'est à dire que le prenom le nom et la ville soit exactement les mêmes pour joindre les distances .

       

      En effet, des gens peuvent avoir les memes prénoms, ou venir de la même ville, cependant leur distance ne sera pas la même..

       

      Voyez vous comment faire? un left join me permet de faire la jointure sur un champ mais en gros je voudrais la faire sur 3..

       

       

      Merci!

        • Re: Left join et if?

          Bonjour,

           

          • Sauf erreur de ma part, il est tout à fait possible de faire une jointure sur plusieurs champs avec Qlikview dans le script.
            Il faut simplement que les champs portant sur la jointure soient de même nom.

           

          • Il existe aussi d'autres solutions comme créer un autre champ à partir de la concaténation des 3 champs Nom,Prenom et ville. Ce champ ainsi crée sera la clé primaire de la table.

           

          • De plus, il est tout à fait possible d'utiliser la fonction autonumberhash(nom,prenom,ville) qui te revoint un identifiant unique pour tous les couples distincts de nom,prenom et ville.

           

          Essaye la première solution car c'est la plus naturelle dans ton cas.

           

          Cdt,

          Benjamin Drouin

          • Re: Left join et if?

            Bonjour,

             

            avez-vous toujours un problème sur ce post ?

             

            cdt,

            benjamin drouin

              • Re: Left join et if?

                Bonjour Benjamin, je suis vraiment désolé de ne pas avoir répondu j'ai eu quelques jours de congés..

                Effectivement, il fallait simplement que les champs portent le même nom comme quoi parfois le plus simple est parfois le plus efficace.

                 

                Merci infiniement pour ta réponse!