Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
mahieuphilippe
Creator
Creator

Effectuer un calcul entre deux champs de source differentes

Bonjour à tous,

Je voudrai effectuer des operations entre deux champs qui viennent de sources differents. J'aimerai savoir si c'est possible et si oui

la meilleure façon de procéder.

Je précisse que je suis debutant lol, merci

Labels (1)
10 Replies
kevinchevrier
Partner - Creator III
Partner - Creator III

Bonjour Philippe,

Si tu as 2 sources différentes, tu fais une table temporaire qui joint les 2 (exemple : un left join).

Ensuite tu fais tes calculs dans une table finale.

Exemple :

TABLE_TEMP :

LOAD *

FROM CHEMIN VERS TON FICHIER 1;

left join

LOAD *

FROM CHEMIN VERS TON FICHIER 2;

TABLE :

Load *,

      PREMIER CALCUL as TON_PREMIER_CALCUL

RESIDENT TABLE_TEMP;

drop table TABLE_TEMP;

Kevin

kevinchevrier
Partner - Creator III
Partner - Creator III

Voici une documentation sur les jointures possibles

Understanding Join, Keep and Concatenate

Kevin

kevinchevrier
Partner - Creator III
Partner - Creator III

Et pour info, tu n'es peut-être pas obligé de faire une jointure.

Mais dans ce cas il te faut UNE clé primaire qui fasse liaison entre tes 2 tables. Pas plus sinon tu auras des clés synthétiques.

Kevin

mahieuphilippe
Creator
Creator
Author

Bonjour Kevin,

Merci pour ta réponse,  je vais regarder le document et reviens vers toi si j'ai une question si tu le permets

Philippe

lcloatre
Partner - Creator III
Partner - Creator III

Philippe,

Le fait que la source soit différente n'est pas important.

Ce qui est important est de faire la jointure entre les 2 données pour que tu puisses faire ton calcul sur les mêmes bases.

lcloatre
Partner - Creator III
Partner - Creator III

Philippe,

As-tu réussi ?

mahieuphilippe
Creator
Creator
Author

Bonjour Laurent,

Merci de prendre des nouvelles mais je suis fort occupé en ce moment mais j'espère regarder jeudi

je te tiens au courant

merci

mahieuphilippe
Creator
Creator
Author

Bonjour Laurent,

Je reviens vers toi désolé pour le délai mais j'avais d'autres points à terminer.

concernant mes deux sources, je n'ai pas de clé primaire commune je te montre le script :

LOAD RowNo(),
// RRFDAT,
Date(Date#(RRFDAT, 'YYYYMMDD')) as RRFDAT,
Month(Date(Date#(RRFDAT, 'YYYYMMDD'))) as MOIS,
RRFLIN as Line,
RRMNTT,
RRRPIT,
RRTIME;
SQL SELECT RRFDAT,
RRFLIN,
RRMNTT,
RRRPIT,
RRTIME
FROM NGKCE.EQDLIB.PRRSLTP1
where RRFDAT >= '20170401'; 

pour ma deuxième source :


LOAD


Date("Jobexec_date") as RRFDAT2,
Month(Date("Jobexec_date")) as RRF_MONTH2,
MO_group_key as line,

"Job_type",
"Jobexec_date",
"Jobstatus#",
"MO_name",
"Start_date",
"Stop_time",
"WO_Key",
"MO_code_key",
"MO_group_key",
"WO_name";
SQL SELECT "Job_type",
"Jobexec_date",
"Jobstatus#",
"MO_name",
"Start_date",
"Stop_time",
"WO_Key",
"MO_code_key",
"MO_group_key",
"WO_name"
FROM API3.PUB."Work_history"
WHERE
"MO_group_key" in ('LIGNE 2','LIGNE 4','LIGNE 5') and (Work_history.Jobexec_date>= '2017-04-01') and (Work_history.Jobexec_date<= '2018-03-31') and "Stop_time" > '0.01' and "Job_type" = 'U' ;

eventuellement  dans la première source  la clé  'RRDAT'  est une date   et dans la deuxième le 'jobexec_date' est aussi une date ,

dans ce cas peût-on faire la junction avec ce champs ?

                                       première source                                 deuxième source

mon calcul  est       ( sum (RRTIME) - sum (RRMNTT)) / (count (wo_key)+1)

je vais bien sur regarder de mon côté si tu sais me guider un peu, ce serai sympa

Philippe

sfatoux72
Partner - Specialist
Partner - Specialist

‌Salut Kevin,

Pour info, il faut également un ou plusieurs champs en commun dans tes tables pour faire un jointure correcte. Sinon, tu auras chaque ligne de ta 2eme table associée à chaque ligne de ta 1ère table ce qui n'est en général pas souhaité