IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

QlikView Discussion :

Concaténer valeur colonne dans un champs


Sujet :

QlikView

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 32
    Points : 23
    Points
    23
    Par défaut Concaténer valeur colonne dans un champs
    Comment concaténer l'ensemble des valeurs d'une colonne dans un champs ?

    Reprenons mes tables que j'ai à présent regroupé en une seule avec le jeu de donnée suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    idInfo      idTest              Info  	 Test	    Motif	
    1		11		  B		  A 			
    1		11		  B		  X        Blabla	
    1		11		  B		  A 			
    1		11		  B		  X        Blabla	
    1		11		  B		  A
    Dans la modélisation de mon SI, lorsque j'ai le Test A le résultat apparaît dans la ligne suivante. Si motif = Null tout s'est bien passé sinon Motif est rempli.

    Ainsi dans notre exemple ligne par ligne on a :
    Execute Test A
    Test A Fail -> Blabla
    Execute Test A
    Test A OK - Execute Test B
    Test B OK - Execute Test C

    Ce résultat correspond au meilleur des cas, mon gros pb : ce n'est pas toujours vrai. Je peux avoir ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    idInfo            idTest    	        Info      Test    	 Motif
    1		11		  B		  A             
    1		11		  B		  B  
    1		11		  B		  X            Blabla 
    1		11		  B		  C
    Et pourtant le Motif Blabla n'est pas le résultat de Test B mais peut être que ce mauvais résultat est dû à Test A et non à Test B.

    Ainsi il est impossible de savoir pour le Test A combien ont été concluant ou non par sa faute. A moi que vous ayez une idée ?

    Ce qui m’amène à la question suivante :
    Est - il possible d'ajouter un nouveau champs dans QlikView qui concatenerait tous les tests sauf X ? Ce qui donnerait celà :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    idInfo        idTest         Info  	         Test	   Motif  	  Alltest
    1		11		  B		  A 		           A B C
    1		11		  B		  X          Blabla	   A B C
    1		11		  B		  A 		         A B C
    1		11		  B		  X         Blabla	   A B C
    1		11		  B		  A 	                 A B C
    1		11		  B		  B	                 A B C
    1		11		  B		  C 	                 A B C
    Je pourrais ainsi savoir en cas test non concluant quel batterie de test a été réalisée.

    Merci en tout cas pour vos réponses précédentes et merci d'avance pour les futures... , je commence a littéralement craquer pour ce tool et un peu grace a vous !!

  2. #2
    Modérateur

    Inscrit en
    Octobre 2006
    Messages
    1 649
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 649
    Points : 2 529
    Points
    2 529
    Billets dans le blog
    6
    Par défaut
    Supposons que vous ayez ces données :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Data:
    LOAD * INLINE [
    idInfo, idTest, Info, Test, Motif
    1, 11, B, A
    2, 11, B, X, Blabla
    3, 11, B, A
    4, 11, B, X, Blabla
    5, 11, B, A
    6, 11, B, B
    7, 28, Nouveau test, A
    8, 28, Nouveau test, X, plop plop
    9, 28, Nouveau test, D
    10, 11, B, C
    ];
    Vous pouvez rajouter, pour chaque idTest, la liste de tous les "Test" distinct qui sont différents de 'X' :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    LEFT JOIN (Data)
    LOAD 
    	idTest,
    	concat(distinct if(Test <> 'X', Test), ' ') AS AllTest
    RESIDENT Data
    GROUP BY idTest;

    -->

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 32
    Points : 23
    Points
    23
    Par défaut
    Impeccable Merci beaucoup PhunkyBoy ! : )

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mettre plusieurs valeurs d'une colonne dans un champ
    Par ljleyoshi dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 16/09/2011, 03h16
  2. [MySQL] Récupérer les valeurs définies dans un champ ENUM
    Par Huntress dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 03/07/2010, 18h55
  3. Réponses: 3
    Dernier message: 10/08/2005, 11h11
  4. Inserer une valeur NULL dans un champ datetime
    Par Karibou dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 10/08/2005, 10h58
  5. Réponses: 3
    Dernier message: 18/02/2005, 19h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo