3 Replies Latest reply: Nov 15, 2016 2:22 PM by Sébastien Fatoux RSS

    création de colonne + édition de données

    aurelien nani

      Bonjour,

       

       

      Je voulais savoir comment je pourrais ajouter une colonne qui lorsque par exemple dans une colonne on a "bleu"

      dans la nouvelle colonne on aura jaune

       

      C'est pas très clair mais j'arrive pas autrement à expliquer

      12 - new
      orangeorange
      bleujaune
      jaunejaune
      vertvert

       

       

       

      Merci

       

       

       

      Aurélien

        • Re: création de colonne + édition de données
          Florent Lelarge-Otiniano

          Bonjour,

          tu peux le faire dans le script de chargement :

           

          if(1='bleu','orange', 1) as 2new,

           

          tu utilises ce champ ensuite dans tes tableaux...

          Florent

            • Re: création de colonne + édition de données
              Didier DELANSAY

              Bonjour

              Je ne sais pas si j'ai bien compris, mais dans le chargement tu fais :

               

              Load  couleur_origine,

                        if(couleur_origine = 'Jaune', 'Bleu', couleur_origine) as couleur_destination

                        etc ...

              from  .......

               

              Didier

                • Re: création de colonne + édition de données
                  Sébastien Fatoux

                  Bonjour Didier,

                   

                  Je pense que tu as bien compris ce que Florent voulais dire, mais si tu veux être consistant avec la question de départ, il faudrait plutôt inverser les 2 couleurs:

                   

                  Load  couleur_origine,

                        if(couleur_origine = 'Bleu', 'Jaune', couleur_origine) as couleur_destination,

                        etc ...

                  from  ...

                   

                  Cette solution fonctionne très bien si il y a un ou deux changements de couleurs, sinon elle devient un peu lourde et compliquée à maintenir ("if" imbriqué) .

                   

                  Si plusieurs changements de couleurs sont requis, il est préférable de passer par une table de mapping:

                   

                  map_color:
                  Mapping LOAD *
                  INLINE [
                      couleur_origine, couleur_destination
                      Bleu, Jaune
                      Rouge, Vert
                  ];

                   

                  LOAD couleur_origine,
                       ApplyMap('map_color', couleur_origine, couleur_origine) As couleur_destination,

                       etc ...

                  from  ...