Generates the count of distinct non-null values for rows in each group that meet a specific condition.

NOTE: When added to a transform, this function is applied to the current sample. If you change your sample or run the job, the computed values for this function are updated. Transforms that change the number of rows in subsequent recipe steps do not affect the values computed for this step.

To perform a simple counting of distinct non-nulls without conditionals, use the COUNTDISTINCT function. See COUNTDISTINCT Function.

pivot value: COUNTDISTINCTIF(entries, entryValidation == 'Ok') group:City limit:1

Output: Generates a two-column table containing the unique values for City and the count of distinct non-null values in the entries column for that City value when the entryValidation value is 'Ok'. The limit parameter defines the maximum number of output columns.

pivot value:COUNTDISTINCTIF(col_ref, test_expression) [group:group_col_ref] [limit:limit_count]

ArgumentRequired?Data TypeDescription
col_refYstringReference to the column you wish to evaluate.
test_expressionYstringExpression that is evaluated. Must resolve to true or false

For more information on the group and limit parameter, see Pivot Transform.


Name of the column whose values you wish to use in the calculation. Column must be a numeric (Integer or Decimal) type.

Required?Data TypeExample Value
YesString that corresponds to the name of the columnmyValues


This parameter contains the expression to evaluate. This expression must resolve to a Boolean (true or false) value.

Required?Data TypeExample Value
YesString expression that evaluates to true or false(LastName == 'Mouse' && FirstName == 'Mickey')

Example - Summarize Voter Registrations