Extracts the set of unique values from a column into an array stored in a new column. This function is typically part of an aggregation. 

NOTE: Output order of nested values from an aggregation function cannot be determined in advance. The work to generate output values is done in parallel, which results in different ordering of any nested values for each execution run for each running environment. 

Tip: To generate unique values for the generated array, apply the ARRAYUNIQUE function in the next step after this one. See ARRAYUNIQUE Function.

Input column can be of any type.

For a version of this function computed over a rolling window of rows, see ROLLINGLIST Function.

unique(Name, 500)

Output: Returns the unique values for Name in an array of all values (up to a count of 500).

unique(function_col_ref, [limit_int]) [ group:group_col_ref] [limit:limit_count]

ArgumentRequired?Data TypeDescription
function_col_refYstringName of column to which to apply the function
limit_intNinteger (positive)Maximum number of unique values to extract into the list array. From 1 to 1000.

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


Name of the column from which to extract the list of unique values based on the grouping.

Required?Data TypeExample Value
YesString (column reference)myValues


Non-negative integer that defines the maximum number of unique values to extract into the list array. 

NOTE: If specified, this value must between 1 and 1000, inclusive.

NOTE: Do not use the limiting argument in a unique function call on a flat aggregate, in which all values in a column have been inserted into a single cell. In this case, you might be able to use the limit argument if you also specify a group parameter. Misuse of the unique function can cause the application to crash.

Required?Data TypeExample Value

Example - Colors sold this month