Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour à tous,
J'ai deux fichiers excel. Dans le premier, il y a 2 champs, A et B. Dans le second, il y a aussi 2 champs, A et C.
Les deux champs A dans les deux fichiers sont identique, il sert donc de clef.
Fichier 1 :
A B
1 a
2 b
3 c
Fichier 2 :
A C
1 -
2 D
3 -
Je voudrais réaliser un script qui compare le champs B et C tel que, si il y a une valeur dans le champ C, alors il faut utiliser celui-ci et ignorer le champs B. Le résultat sera le suivant :
Résultat :
A Res
1 a
2 D
3 c
Je ne sais pas comment faire. La fonction like ne m'aide pas beaucoup… Merci d'avance pour votre aide.
t1:
LOAD * INLINE [
A ,B
1,a
2 ,b
3 ,c
]
;
join
T2:
load * Inline
[
A,C
1 ,
2 ,D
3 ,
]
;
LOAD
A,
if(len(C)=0,B,C) as Result
Resident t1;
drop table t1;
OR IF C='-'
t1:
LOAD * INLINE [
A ,B
1,a
2 ,b
3 ,c
]
;
join
T2:
load * Inline
[
A,C
1 ,-
2 ,D
3 , -
]
;
LOAD
A,
if(C='-',B,C) as Result
Resident t1;
drop table t1;
t1:
LOAD * INLINE [
A ,B
1,a
2 ,b
3 ,c
]
;
join
T2:
load * Inline
[
A,C
1 ,
2 ,D
3 ,
]
;
LOAD
A,
if(len(C)=0,B,C) as Result
Resident t1;
drop table t1;
Feeling Qlikngry?
Bonjour,
MAP_T:
mapping
LOAD * INLINE [
A ,B
1,a
2 ,b
3 ,c
]
;
TABLE:
load
A,
If(IsNull(C), applyMap('MAP_T', C), C) as C
Inline [
A,C
1 ,
2 ,D
3 ,
]
;
*Dans le cas où C est NULL : IsNull(C)
Dans le cas où C est vide : Len(C)=0
Aurélien