Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour,
Dans une source de données A j'ai un champs DATE.
Dans une source de données B j'ai deux champs date : DATE_DEBUT et DATE_FIN.
Dans le script, j'ai quelque chose qui ressemble à
association:
load DATE from A;
join(association)
load DATE_DEBUT,
DATE_FIN
from B;
Je voudrais faire une jointure en fonction de la date lorsque DATE est inclu entre DATE_DEBUT et DATE_FIN.
J'ai essayé plusieurs méthodes, mais le plus souvent j'ai une erreur : champs DATE introuvable.
Quelqu'un a une astuce ? Merci d'avance.
Hello,
Il faut utiliser la fonction IntervalMatch.
Regarde ici : http://community.qlik.com/blogs/qlikviewdesignblog/2013/04/04/intervalmatch
Ton script deviendrait ça:
association:
load DATE from A;
Intervals:
load DATE_DEBUT,
DATE_FIN
from B;
IntervalMatch:
IntervalMatch (DATE )
Load distinct DATE_DEBUT, DATE_FIN resident Intervals;
Antoine
Bonjour Quentin,
Il y a aussi une méthode étendue d'utilisation du IntervalMatch() dans l'éventualité ou un champ servant de clé serait à considérer, par exemple, si les données concernant plusieurs types d'événements étaient à segmenter d'un log global. La syntaxe demeure plus ou moins la même;
association:
LOAD ChampClé, DATE,
From A;
Intervals:
LOAD ChampClé, DATE_DEBUT, DATE_FIN
From B;
IntervalMatch:
IntervalMatch (DATE, ChampClé)
LOAD Distinct DATE_DEBUT, DATE_FIN, ChampClé
Resident Intervals;
Cordialement,
Philippe