Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Dzedai
Contributor II
Contributor II

Identification doublon dans une expression

Bonjour à tous, 

Je continue à découvrir Qlik et le forum est une mine d'info. Mais je suis coincé avec un problème +/- de doublon.

J'ai besoin d'identifier des lignes qui seraient identiques pour certains champs , en pratique je recois les données avec un numéro unique attribué à chaque ligne mais je viens de voir que ce numéro n'est pas le gage que chaque ligne soit unique.

En pratique mon numéro id_vente est unique dans la base de données mais des champs de la ligne correspondants à cette peuvent être identiques; ainsi mes "Count (distinct id_vente)" pourraient compter des doublons...(1064589622 et 1364058796 dans l'exemple d'illustration ci-dessous)

id_ventenom_produitmaj_reftimestamp_achatref_achat
1024589612ask01/10/200112/04/2019 10:0501123
1064589622blue15/06/201011/09/2019 15:5401356
1074569329cole01/03/200905/02/2020 17:0902169
1123045896old15/02/201724/10/2019 11:2812607
1364058796blue15/06/201011/09/2019 15:5401356
1099623501alf01/09/199917/08/2019 18:1822749

 

Comment faire une expression pour que Qlik me donne dans un tableau les lignes que j'identifie comme doublon en me basant sur les 4 champs en + de l'id_vente? (il y a beauuuuuuucoup plus de champs par ligne mais ces 4 là, renseignés systématiquement, sont ceux qui pourraient identifier les doublons)

Merci par avance pour votre aide et bon dimanche à tous.

2 Solutions

Accepted Solutions
brunobertels
Master
Master

Bonjour 

Ajouter un champs clé avec la concatenation des 4 champs identifiants un doublon 

puis recharger la table avec un Load distinct 

Temp: 

Load 

nom_produit&maj_ref&timestamp_achat&ref_achat as CLE_DOUBLON

id_vente,

nom_produit,

maj_ref,

timestamp_achat,

ref_achat

...

From ... 

 

no concatenate

Final

load DISTINCT

*

resident TEMP;

drop table TEMP

 

 

View solution in original post

lotfiblo
Creator
Creator

Salut @Dzedai ,

Le moyen le plus simple serait de créer une nouvelle clé unique basé sur les 5 champs comme suit:

Load
id_vente,
nom_produit,
maj_ref,
timestamp_achat,
ref_achat,
AutoNumberHash128(id_vente, nom_produit, maj_ref,timestamp_achat, ref_achat) as Identifiant_vente
From ....

 

Tu peux ainsi faire ton expression avec le nouvelle clé: Count(Identifiant_vente)

Voila,

 

J'espère que cela va t'aider.

 

Lotfi

 

Use Qalyptus for your Qlik Sense on-premise and Qlik Sense SaaS Reporting
Connect with me on Linkedin

View solution in original post

3 Replies
brunobertels
Master
Master

Bonjour 

Ajouter un champs clé avec la concatenation des 4 champs identifiants un doublon 

puis recharger la table avec un Load distinct 

Temp: 

Load 

nom_produit&maj_ref&timestamp_achat&ref_achat as CLE_DOUBLON

id_vente,

nom_produit,

maj_ref,

timestamp_achat,

ref_achat

...

From ... 

 

no concatenate

Final

load DISTINCT

*

resident TEMP;

drop table TEMP

 

 

lotfiblo
Creator
Creator

Salut @Dzedai ,

Le moyen le plus simple serait de créer une nouvelle clé unique basé sur les 5 champs comme suit:

Load
id_vente,
nom_produit,
maj_ref,
timestamp_achat,
ref_achat,
AutoNumberHash128(id_vente, nom_produit, maj_ref,timestamp_achat, ref_achat) as Identifiant_vente
From ....

 

Tu peux ainsi faire ton expression avec le nouvelle clé: Count(Identifiant_vente)

Voila,

 

J'espère que cela va t'aider.

 

Lotfi

 

Use Qalyptus for your Qlik Sense on-premise and Qlik Sense SaaS Reporting
Connect with me on Linkedin
Dzedai
Contributor II
Contributor II
Author

Merci bien à tous les deux! Ca fonctionne 🙂

Bonne journée.