Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Besoin aide utilisation Previous Peek

Bonjour,

Je bloque sur le problème suivant :

J’ai des actions qui sont émis par un émetteur  qui possède un identifiant unique.

Lorsque la première action est émise par un id, l’objectif est d’ignorer toutes les actions pour ce même id qui se sont passés dans l'heure.

Toto a émis une action à 12h donc il faut ignorer toutes les actions inférieures à 13h (12h + 1h)  pour toto, en revanche, quand toto effectue l'action à 13:02, il faut la prendre et ignorer toutes celles inférieurs à 14:02, ainsi de suite.

Date

Heure

Id

Emetteur

16/10/15

12:00:00

143

toto

16/10/15

12:01:00

143

toto

16/10/15

12:10:00

143

toto

16/10/15

12:11:00

545

tutu

16/10/15

12:20:00

143

toto

16/10/15

12:30:00

143

toto

16/10/15

12:40:00

143

toto

16/10/15

12:50:00

143

toto

16/10/15

13:00:00

143

toto

16/10/15

13:01:00

545

tutu

16/10/15

13:12:00

545

tutu

16/10/15

13:02:00

143

toto

16/10/15

13:03:00

143

toto

16/10/15

13:30:00

143

toto

16/10/15

13:40:00

143

toto

16/10/15

13:45:00

143

toto

16/10/15

14:00:00

143

toto

16/10/15

14:05:00

143

toto

Résultat attendu :

Date

Heure

Id

Emetteur

16/10/15

12:00:00

143

Toto

16/10/15

12:11:00

545

tutu

16/10/15

13:12:00

545

tutu

16/10/15

13:02:00

143

toto

16/10/15

14:05:00

143

toto

Merci d'avance pour votre aide.

1 Reply
vincent_ardiet
Specialist
Specialist

Bonjour,

Il n'est pas preciser si la solution doit etre dans le script ou dans une expression.

Dans le script ceci fonctionne :


titi:
load * Inline
[date,heure,id,emetteur
16/10/15,12:00:00,143,toto
16/10/15,12:01:00,143,toto
16/10/15,12:10:00,143,toto
16/10/15,12:11:00,545,tutu
16/10/15,12:20:00,143,toto
16/10/15,12:30:00,143,toto
16/10/15,12:40:00,143,toto
16/10/15,12:50:00,143,toto
16/10/15,13:00:00,143,toto
16/10/15,13:01:00,545,tutu
16/10/15,13:12:00,545,tutu
16/10/15,13:02:00,143,toto
16/10/15,13:03:00,143,toto
16/10/15,13:30:00,143,toto
16/10/15,13:40:00,143,toto
16/10/15,13:45:00,143,toto
16/10/15,14:00:00,143,toto
16/10/15,14:05:00,143,toto] ;

test:
load
   date
, hour(heure) as heure.heure
, time(min(heure)) as heure.min
, emetteur
Resident titi
group by
   date
, hour(heure)
, emetteur ;

Inner Join (test)
load
   date
, heure as heure.min
, emetteur
, id
Resident titi ;

Drop Field heure.heure ;

Attention, derriere cela cree une clef synthetique, c'est juste une methode pour retrouver la valeur.

Donc, il faut rearanger en fonction de tes besoins.

Cordialement,

Vincent