Compter les valeurs distinctes (Count Distinct)
Compter le nombre de valeurs uniques pour une agrégation donnée.
Tout d'abord, créez un nouveau groupe de mappage par « group by ». Triez par le tag que vous souhaitez compter. Choisissez « Distinct Consec. » pour votre tag. Cela ne compte les valeurs distinctes que si elles sont consécutives, c'est pourquoi vous devez trier par votre tag.
Ensuite, créez un calcul Java avec votre nouveau tag .distcons comme _str1 :
// Ignore les lignes sans valeur
if (_str1.length()==0) return "";
// Compte le nombre de caractères "|" + 1
return _str1.chars().filter(c -> c == '|').count() + 1;
Notez que vous devriez choisir de petites agrégations et utiliser des tags avec peu de caractères. Sinon, cela pourrait être lent.
ID Manuel
Pour ne conserver qu'un nombre fixe de lignes dans Braincube - À coupler avec un filtre Java dans la table MX :
if (_doJava.get("_str1",-1).equals(""))
return 1.0;
double previous = Str.ToDouble(_doJava.get("_str1",-1));
if (previous >= 5000000.0)
return 1.0;
return previous + 1.0;