in asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/BuiltinFunctions.java [2182:2893]
static {
// Aggregate functions
// AVG
addAgg(AVG);
addAgg(LOCAL_AVG);
addAgg(GLOBAL_AVG);
addLocalAgg(AVG, LOCAL_AVG);
addIntermediateAgg(AVG, INTERMEDIATE_AVG);
addIntermediateAgg(LOCAL_AVG, INTERMEDIATE_AVG);
addIntermediateAgg(GLOBAL_AVG, INTERMEDIATE_AVG);
addGlobalAgg(AVG, GLOBAL_AVG);
addScalarAgg(AVG, SCALAR_AVG);
addSerialAgg(AVG, SERIAL_AVG);
addSerialAgg(LOCAL_AVG, SERIAL_LOCAL_AVG);
addSerialAgg(GLOBAL_AVG, SERIAL_GLOBAL_AVG);
addAgg(SERIAL_AVG);
addAgg(SERIAL_LOCAL_AVG);
addAgg(SERIAL_GLOBAL_AVG);
addLocalAgg(SERIAL_AVG, SERIAL_LOCAL_AVG);
addIntermediateAgg(SERIAL_AVG, SERIAL_INTERMEDIATE_AVG);
addIntermediateAgg(SERIAL_LOCAL_AVG, SERIAL_INTERMEDIATE_AVG);
addIntermediateAgg(SERIAL_GLOBAL_AVG, SERIAL_INTERMEDIATE_AVG);
addGlobalAgg(SERIAL_AVG, SERIAL_GLOBAL_AVG);
// AVG DISTINCT
addDistinctAgg(AVG_DISTINCT, AVG);
addScalarAgg(AVG_DISTINCT, SCALAR_AVG_DISTINCT);
// COUNT
addAgg(COUNT);
addLocalAgg(COUNT, COUNT);
addIntermediateAgg(COUNT, SUM);
addGlobalAgg(COUNT, SUM);
addScalarAgg(COUNT, SCALAR_COUNT);
addSerialAgg(COUNT, SERIAL_COUNT);
addAgg(SERIAL_COUNT);
addLocalAgg(SERIAL_COUNT, SERIAL_COUNT);
addIntermediateAgg(SERIAL_COUNT, SERIAL_SUM);
addGlobalAgg(SERIAL_COUNT, SERIAL_SUM);
// COUNT DISTINCT
addDistinctAgg(COUNT_DISTINCT, COUNT);
addScalarAgg(COUNT_DISTINCT, SCALAR_COUNT_DISTINCT);
// COUNTN
addAgg(COUNTN);
addLocalAgg(COUNTN, COUNTN);
addIntermediateAgg(COUNTN, SUM);
addGlobalAgg(COUNTN, SUM);
addScalarAgg(COUNTN, SCALAR_COUNTN);
addSerialAgg(COUNTN, SERIAL_COUNTN);
addAgg(SERIAL_COUNTN);
addLocalAgg(SERIAL_COUNTN, SERIAL_COUNTN);
addIntermediateAgg(SERIAL_COUNTN, SERIAL_SUM);
addGlobalAgg(SERIAL_COUNTN, SERIAL_SUM);
// COUNTN DISTINCT
addDistinctAgg(COUNTN_DISTINCT, COUNTN);
addScalarAgg(COUNTN_DISTINCT, SCALAR_COUNTN_DISTINCT);
// MAX
addAgg(MAX);
addAgg(LOCAL_MAX);
addAgg(GLOBAL_MAX);
addLocalAgg(MAX, LOCAL_MAX);
addIntermediateAgg(LOCAL_MAX, INTERMEDIATE_MAX);
addIntermediateAgg(GLOBAL_MAX, GLOBAL_MAX);
addIntermediateAgg(MAX, GLOBAL_MAX);
addGlobalAgg(MAX, GLOBAL_MAX);
addScalarAgg(MAX, SCALAR_MAX);
// MAX DISTINCT
addDistinctAgg(MAX_DISTINCT, MAX);
addScalarAgg(MAX_DISTINCT, SCALAR_MAX_DISTINCT);
// STDDEV_SAMP
addAgg(STDDEV_SAMP);
addAgg(LOCAL_STDDEV_SAMP);
addAgg(GLOBAL_STDDEV_SAMP);
addLocalAgg(STDDEV_SAMP, LOCAL_STDDEV_SAMP);
addIntermediateAgg(STDDEV_SAMP, INTERMEDIATE_STDDEV_SAMP);
addIntermediateAgg(LOCAL_STDDEV_SAMP, INTERMEDIATE_STDDEV_SAMP);
addIntermediateAgg(GLOBAL_STDDEV_SAMP, INTERMEDIATE_STDDEV_SAMP);
addGlobalAgg(STDDEV_SAMP, GLOBAL_STDDEV_SAMP);
addScalarAgg(STDDEV_SAMP, SCALAR_STDDEV_SAMP);
addSerialAgg(STDDEV_SAMP, SERIAL_STDDEV_SAMP);
addSerialAgg(LOCAL_STDDEV_SAMP, SERIAL_LOCAL_STDDEV_SAMP);
addSerialAgg(GLOBAL_STDDEV_SAMP, SERIAL_GLOBAL_STDDEV_SAMP);
addAgg(SERIAL_STDDEV_SAMP);
addAgg(SERIAL_LOCAL_STDDEV_SAMP);
addAgg(SERIAL_GLOBAL_STDDEV_SAMP);
addLocalAgg(SERIAL_STDDEV_SAMP, SERIAL_LOCAL_STDDEV_SAMP);
addIntermediateAgg(SERIAL_STDDEV_SAMP, SERIAL_INTERMEDIATE_STDDEV_SAMP);
addIntermediateAgg(SERIAL_LOCAL_STDDEV_SAMP, SERIAL_INTERMEDIATE_STDDEV_SAMP);
addIntermediateAgg(SERIAL_GLOBAL_STDDEV_SAMP, SERIAL_INTERMEDIATE_STDDEV_SAMP);
addGlobalAgg(SERIAL_STDDEV_SAMP, SERIAL_GLOBAL_STDDEV_SAMP);
// STDDEV_SAMP DISTINCT
addDistinctAgg(STDDEV_SAMP_DISTINCT, STDDEV_SAMP);
addScalarAgg(STDDEV_SAMP_DISTINCT, SCALAR_STDDEV_SAMP_DISTINCT);
// STDDEV_POP
addAgg(STDDEV_POP);
addAgg(LOCAL_STDDEV_POP);
addAgg(GLOBAL_STDDEV_POP);
addLocalAgg(STDDEV_POP, LOCAL_STDDEV_POP);
addIntermediateAgg(STDDEV_POP, INTERMEDIATE_STDDEV_POP);
addIntermediateAgg(LOCAL_STDDEV_POP, INTERMEDIATE_STDDEV_POP);
addIntermediateAgg(GLOBAL_STDDEV_POP, INTERMEDIATE_STDDEV_POP);
addGlobalAgg(STDDEV_POP, GLOBAL_STDDEV_POP);
addScalarAgg(STDDEV_POP, SCALAR_STDDEV_POP);
addSerialAgg(STDDEV_POP, SERIAL_STDDEV_POP);
addSerialAgg(LOCAL_STDDEV_POP, SERIAL_LOCAL_STDDEV_POP);
addSerialAgg(GLOBAL_STDDEV_POP, SERIAL_GLOBAL_STDDEV_POP);
addAgg(SERIAL_STDDEV_POP);
addAgg(SERIAL_LOCAL_STDDEV_POP);
addAgg(SERIAL_GLOBAL_STDDEV_POP);
addLocalAgg(SERIAL_STDDEV_POP, SERIAL_LOCAL_STDDEV_POP);
addIntermediateAgg(SERIAL_STDDEV_POP, SERIAL_INTERMEDIATE_STDDEV_POP);
addIntermediateAgg(SERIAL_LOCAL_STDDEV_POP, SERIAL_INTERMEDIATE_STDDEV_POP);
addIntermediateAgg(SERIAL_GLOBAL_STDDEV_POP, SERIAL_INTERMEDIATE_STDDEV_POP);
addGlobalAgg(SERIAL_STDDEV_POP, SERIAL_GLOBAL_STDDEV_POP);
// STDDEV_POP DISTINCT
addDistinctAgg(STDDEV_POP_DISTINCT, STDDEV_POP);
addScalarAgg(STDDEV_POP_DISTINCT, SCALAR_STDDEV_POP_DISTINCT);
// VAR_SAMP
addAgg(VAR_SAMP);
addAgg(LOCAL_VAR_SAMP);
addAgg(GLOBAL_VAR_SAMP);
addLocalAgg(VAR_SAMP, LOCAL_VAR_SAMP);
addIntermediateAgg(VAR_SAMP, INTERMEDIATE_VAR_SAMP);
addIntermediateAgg(LOCAL_VAR_SAMP, INTERMEDIATE_VAR_SAMP);
addIntermediateAgg(GLOBAL_VAR_SAMP, INTERMEDIATE_VAR_SAMP);
addGlobalAgg(VAR_SAMP, GLOBAL_VAR_SAMP);
addScalarAgg(VAR_SAMP, SCALAR_VAR_SAMP);
addSerialAgg(VAR_SAMP, SERIAL_VAR_SAMP);
addSerialAgg(LOCAL_VAR_SAMP, SERIAL_LOCAL_VAR_SAMP);
addSerialAgg(GLOBAL_VAR_SAMP, SERIAL_GLOBAL_VAR_SAMP);
addAgg(SERIAL_VAR_SAMP);
addAgg(SERIAL_LOCAL_VAR_SAMP);
addAgg(SERIAL_GLOBAL_VAR_SAMP);
addLocalAgg(SERIAL_VAR_SAMP, SERIAL_LOCAL_VAR_SAMP);
addIntermediateAgg(SERIAL_VAR_SAMP, SERIAL_INTERMEDIATE_VAR_SAMP);
addIntermediateAgg(SERIAL_LOCAL_VAR_SAMP, SERIAL_INTERMEDIATE_VAR_SAMP);
addIntermediateAgg(SERIAL_GLOBAL_VAR_SAMP, SERIAL_INTERMEDIATE_VAR_SAMP);
addGlobalAgg(SERIAL_VAR_SAMP, SERIAL_GLOBAL_VAR_SAMP);
// VAR_SAMP DISTINCT
addDistinctAgg(VAR_SAMP_DISTINCT, VAR_SAMP);
addScalarAgg(VAR_SAMP_DISTINCT, SCALAR_VAR_SAMP_DISTINCT);
// VAR_POP
addAgg(VAR_POP);
addAgg(LOCAL_VAR_POP);
addAgg(GLOBAL_VAR_POP);
addLocalAgg(VAR_POP, LOCAL_VAR_POP);
addIntermediateAgg(VAR_POP, INTERMEDIATE_VAR_POP);
addIntermediateAgg(LOCAL_VAR_POP, INTERMEDIATE_VAR_POP);
addIntermediateAgg(GLOBAL_VAR_POP, INTERMEDIATE_VAR_POP);
addGlobalAgg(VAR_POP, GLOBAL_VAR_POP);
addScalarAgg(VAR_POP, SCALAR_VAR_POP);
addSerialAgg(VAR_POP, SERIAL_VAR_POP);
addSerialAgg(LOCAL_VAR_POP, SERIAL_LOCAL_VAR_POP);
addSerialAgg(GLOBAL_VAR_POP, SERIAL_GLOBAL_VAR_POP);
addAgg(SERIAL_VAR_POP);
addAgg(SERIAL_LOCAL_VAR_POP);
addAgg(SERIAL_GLOBAL_VAR_POP);
addLocalAgg(SERIAL_VAR_POP, SERIAL_LOCAL_VAR_POP);
addIntermediateAgg(SERIAL_VAR_POP, SERIAL_INTERMEDIATE_VAR_POP);
addIntermediateAgg(SERIAL_LOCAL_VAR_POP, SERIAL_INTERMEDIATE_VAR_POP);
addIntermediateAgg(SERIAL_GLOBAL_VAR_POP, SERIAL_INTERMEDIATE_VAR_POP);
addGlobalAgg(SERIAL_VAR_POP, SERIAL_GLOBAL_VAR_POP);
// VAR_POP DISTINCT
addDistinctAgg(VAR_POP_DISTINCT, VAR_POP);
addScalarAgg(VAR_POP_DISTINCT, SCALAR_VAR_POP_DISTINCT);
// SKEWNESS
addAgg(SKEWNESS);
addAgg(LOCAL_SKEWNESS);
addAgg(GLOBAL_SKEWNESS);
addLocalAgg(SKEWNESS, LOCAL_SKEWNESS);
addIntermediateAgg(SKEWNESS, INTERMEDIATE_SKEWNESS);
addIntermediateAgg(LOCAL_SKEWNESS, INTERMEDIATE_SKEWNESS);
addIntermediateAgg(GLOBAL_SKEWNESS, INTERMEDIATE_SKEWNESS);
addGlobalAgg(SKEWNESS, GLOBAL_SKEWNESS);
addScalarAgg(SKEWNESS, SCALAR_SKEWNESS);
addSerialAgg(SKEWNESS, SERIAL_SKEWNESS);
addSerialAgg(LOCAL_SKEWNESS, SERIAL_LOCAL_SKEWNESS);
addSerialAgg(GLOBAL_SKEWNESS, SERIAL_GLOBAL_SKEWNESS);
addAgg(SERIAL_SKEWNESS);
addAgg(SERIAL_LOCAL_SKEWNESS);
addAgg(SERIAL_GLOBAL_SKEWNESS);
addLocalAgg(SERIAL_SKEWNESS, SERIAL_LOCAL_SKEWNESS);
addIntermediateAgg(SERIAL_SKEWNESS, SERIAL_INTERMEDIATE_SKEWNESS);
addIntermediateAgg(SERIAL_LOCAL_SKEWNESS, SERIAL_INTERMEDIATE_SKEWNESS);
addIntermediateAgg(SERIAL_GLOBAL_SKEWNESS, SERIAL_INTERMEDIATE_SKEWNESS);
addGlobalAgg(SERIAL_SKEWNESS, SERIAL_GLOBAL_SKEWNESS);
// SKEWNESS DISTINCT
addDistinctAgg(SKEWNESS_DISTINCT, SKEWNESS);
addScalarAgg(SKEWNESS_DISTINCT, SCALAR_SKEWNESS_DISTINCT);
// KURTOSIS
addAgg(KURTOSIS);
addAgg(LOCAL_KURTOSIS);
addAgg(GLOBAL_KURTOSIS);
addLocalAgg(KURTOSIS, LOCAL_KURTOSIS);
addIntermediateAgg(KURTOSIS, INTERMEDIATE_KURTOSIS);
addIntermediateAgg(LOCAL_KURTOSIS, INTERMEDIATE_KURTOSIS);
addIntermediateAgg(GLOBAL_KURTOSIS, INTERMEDIATE_KURTOSIS);
addGlobalAgg(KURTOSIS, GLOBAL_KURTOSIS);
addScalarAgg(KURTOSIS, SCALAR_KURTOSIS);
addSerialAgg(KURTOSIS, SERIAL_KURTOSIS);
addSerialAgg(LOCAL_KURTOSIS, SERIAL_LOCAL_KURTOSIS);
addSerialAgg(GLOBAL_KURTOSIS, SERIAL_GLOBAL_KURTOSIS);
addAgg(SERIAL_KURTOSIS);
addAgg(SERIAL_LOCAL_KURTOSIS);
addAgg(SERIAL_GLOBAL_KURTOSIS);
addLocalAgg(SERIAL_KURTOSIS, SERIAL_LOCAL_KURTOSIS);
addIntermediateAgg(SERIAL_KURTOSIS, SERIAL_INTERMEDIATE_KURTOSIS);
addIntermediateAgg(SERIAL_LOCAL_KURTOSIS, SERIAL_INTERMEDIATE_KURTOSIS);
addIntermediateAgg(SERIAL_GLOBAL_KURTOSIS, SERIAL_INTERMEDIATE_KURTOSIS);
addGlobalAgg(SERIAL_KURTOSIS, SERIAL_GLOBAL_KURTOSIS);
// KURTOSIS DISTINCT
addDistinctAgg(KURTOSIS_DISTINCT, KURTOSIS);
addScalarAgg(KURTOSIS_DISTINCT, SCALAR_KURTOSIS_DISTINCT);
// FIRST_ELEMENT
addAgg(FIRST_ELEMENT);
addAgg(LOCAL_FIRST_ELEMENT);
addLocalAgg(FIRST_ELEMENT, LOCAL_FIRST_ELEMENT);
addIntermediateAgg(LOCAL_FIRST_ELEMENT, FIRST_ELEMENT);
addIntermediateAgg(FIRST_ELEMENT, FIRST_ELEMENT);
addGlobalAgg(FIRST_ELEMENT, FIRST_ELEMENT);
addScalarAgg(FIRST_ELEMENT, SCALAR_FIRST_ELEMENT);
addScalarAgg(LOCAL_FIRST_ELEMENT, SCALAR_LOCAL_FIRST_ELEMENT);
// LAST_ELEMENT
addAgg(LAST_ELEMENT);
addScalarAgg(LAST_ELEMENT, SCALAR_LAST_ELEMENT);
// RANGE_MAP
addAgg(RANGE_MAP);
addAgg(LOCAL_SAMPLING);
addLocalAgg(RANGE_MAP, LOCAL_SAMPLING);
addIntermediateAgg(LOCAL_SAMPLING, RANGE_MAP);
addIntermediateAgg(RANGE_MAP, RANGE_MAP);
addGlobalAgg(RANGE_MAP, RANGE_MAP);
addAgg(NULL_WRITER);
addLocalAgg(NULL_WRITER, NULL_WRITER);
addIntermediateAgg(NULL_WRITER, NULL_WRITER);
addGlobalAgg(NULL_WRITER, NULL_WRITER);
// MIN
addAgg(MIN);
addAgg(LOCAL_MIN);
addAgg(GLOBAL_MIN);
addLocalAgg(MIN, LOCAL_MIN);
addIntermediateAgg(LOCAL_MIN, INTERMEDIATE_MIN);
addIntermediateAgg(GLOBAL_MIN, GLOBAL_MIN);
addIntermediateAgg(MIN, GLOBAL_MIN);
addGlobalAgg(MIN, GLOBAL_MIN);
addScalarAgg(MIN, SCALAR_MIN);
// MIN DISTINCT
addDistinctAgg(MIN_DISTINCT, MIN);
addScalarAgg(MIN_DISTINCT, SCALAR_MIN_DISTINCT);
// SUM
addAgg(SUM);
addAgg(LOCAL_SUM);
addAgg(GLOBAL_SUM);
addLocalAgg(SUM, LOCAL_SUM);
addIntermediateAgg(SUM, INTERMEDIATE_SUM);
addIntermediateAgg(LOCAL_SUM, INTERMEDIATE_SUM);
addIntermediateAgg(GLOBAL_SUM, INTERMEDIATE_SUM);
addGlobalAgg(SUM, GLOBAL_SUM);
addScalarAgg(SUM, SCALAR_SUM);
addAgg(SERIAL_SUM);
addAgg(SERIAL_LOCAL_SUM);
addAgg(SERIAL_GLOBAL_SUM);
addSerialAgg(SUM, SERIAL_SUM);
addSerialAgg(LOCAL_SUM, SERIAL_LOCAL_SUM);
addSerialAgg(GLOBAL_SUM, SERIAL_GLOBAL_SUM);
addLocalAgg(SERIAL_SUM, SERIAL_LOCAL_SUM);
addIntermediateAgg(SERIAL_SUM, SERIAL_INTERMEDIATE_SUM);
addIntermediateAgg(SERIAL_LOCAL_SUM, SERIAL_INTERMEDIATE_SUM);
addIntermediateAgg(SERIAL_GLOBAL_SUM, SERIAL_INTERMEDIATE_SUM);
addGlobalAgg(SERIAL_SUM, SERIAL_GLOBAL_SUM);
// SUM DISTINCT
addDistinctAgg(SUM_DISTINCT, SUM);
addScalarAgg(SUM_DISTINCT, SCALAR_SUM_DISTINCT);
// LISTIFY/ARRAY_AGG
addAgg(LISTIFY);
addScalarAgg(LISTIFY, SCALAR_ARRAYAGG);
// LISTIFY/ARRAY_AGG DISTINCT
addDistinctAgg(LISTIFY_DISTINCT, LISTIFY);
addScalarAgg(LISTIFY_DISTINCT, SCALAR_ARRAYAGG_DISTINCT);
// SQL Aggregate Functions
// SQL AVG
addAgg(SQL_AVG);
addAgg(LOCAL_SQL_AVG);
addAgg(GLOBAL_SQL_AVG);
addLocalAgg(SQL_AVG, LOCAL_SQL_AVG);
addIntermediateAgg(SQL_AVG, INTERMEDIATE_SQL_AVG);
addIntermediateAgg(LOCAL_SQL_AVG, INTERMEDIATE_SQL_AVG);
addIntermediateAgg(GLOBAL_SQL_AVG, INTERMEDIATE_SQL_AVG);
addGlobalAgg(SQL_AVG, GLOBAL_SQL_AVG);
addScalarAgg(SQL_AVG, SCALAR_SQL_AVG);
addSerialAgg(SQL_AVG, SERIAL_SQL_AVG);
addSerialAgg(LOCAL_SQL_AVG, SERIAL_LOCAL_SQL_AVG);
addSerialAgg(GLOBAL_SQL_AVG, SERIAL_GLOBAL_SQL_AVG);
addAgg(SERIAL_SQL_AVG);
addAgg(SERIAL_LOCAL_SQL_AVG);
addAgg(SERIAL_GLOBAL_SQL_AVG);
addLocalAgg(SERIAL_SQL_AVG, SERIAL_LOCAL_SQL_AVG);
addIntermediateAgg(SERIAL_SQL_AVG, SERIAL_INTERMEDIATE_SQL_AVG);
addIntermediateAgg(SERIAL_LOCAL_SQL_AVG, SERIAL_INTERMEDIATE_SQL_AVG);
addIntermediateAgg(SERIAL_GLOBAL_SQL_AVG, SERIAL_INTERMEDIATE_SQL_AVG);
addGlobalAgg(SERIAL_SQL_AVG, SERIAL_GLOBAL_SQL_AVG);
// SQL STDDEV_SAMP
addAgg(SQL_STDDEV_SAMP);
addAgg(LOCAL_SQL_STDDEV_SAMP);
addAgg(GLOBAL_SQL_STDDEV_SAMP);
addLocalAgg(SQL_STDDEV_SAMP, LOCAL_SQL_STDDEV_SAMP);
addIntermediateAgg(SQL_STDDEV_SAMP, INTERMEDIATE_SQL_STDDEV_SAMP);
addIntermediateAgg(LOCAL_SQL_STDDEV_SAMP, INTERMEDIATE_SQL_STDDEV_SAMP);
addIntermediateAgg(GLOBAL_SQL_STDDEV_SAMP, INTERMEDIATE_SQL_STDDEV_SAMP);
addGlobalAgg(SQL_STDDEV_SAMP, GLOBAL_SQL_STDDEV_SAMP);
addScalarAgg(SQL_STDDEV_SAMP, SCALAR_SQL_STDDEV_SAMP);
addSerialAgg(SQL_STDDEV_SAMP, SERIAL_SQL_STDDEV_SAMP);
addSerialAgg(LOCAL_SQL_STDDEV_SAMP, SERIAL_LOCAL_SQL_STDDEV_SAMP);
addSerialAgg(GLOBAL_SQL_STDDEV_SAMP, SERIAL_GLOBAL_SQL_STDDEV_SAMP);
addAgg(SERIAL_SQL_STDDEV_SAMP);
addAgg(SERIAL_LOCAL_SQL_STDDEV_SAMP);
addAgg(SERIAL_GLOBAL_SQL_STDDEV_SAMP);
addLocalAgg(SERIAL_SQL_STDDEV_SAMP, SERIAL_LOCAL_SQL_STDDEV_SAMP);
addIntermediateAgg(SERIAL_SQL_STDDEV_SAMP, SERIAL_INTERMEDIATE_SQL_STDDEV_SAMP);
addIntermediateAgg(SERIAL_LOCAL_SQL_STDDEV_SAMP, SERIAL_INTERMEDIATE_SQL_STDDEV_SAMP);
addIntermediateAgg(SERIAL_GLOBAL_SQL_STDDEV_SAMP, SERIAL_INTERMEDIATE_SQL_STDDEV_SAMP);
addGlobalAgg(SERIAL_SQL_STDDEV_SAMP, SERIAL_GLOBAL_SQL_STDDEV_SAMP);
// SQL STDDEV_POP
addAgg(SQL_STDDEV_POP);
addAgg(LOCAL_SQL_STDDEV_POP);
addAgg(GLOBAL_SQL_STDDEV_POP);
addLocalAgg(SQL_STDDEV_POP, LOCAL_SQL_STDDEV_POP);
addIntermediateAgg(SQL_STDDEV_POP, INTERMEDIATE_SQL_STDDEV_POP);
addIntermediateAgg(LOCAL_SQL_STDDEV_POP, INTERMEDIATE_SQL_STDDEV_POP);
addIntermediateAgg(GLOBAL_SQL_STDDEV_POP, INTERMEDIATE_SQL_STDDEV_POP);
addGlobalAgg(SQL_STDDEV_POP, GLOBAL_SQL_STDDEV_POP);
addScalarAgg(SQL_STDDEV_POP, SCALAR_SQL_STDDEV_POP);
addSerialAgg(SQL_STDDEV_POP, SERIAL_SQL_STDDEV_POP);
addSerialAgg(LOCAL_SQL_STDDEV_POP, SERIAL_LOCAL_SQL_STDDEV_POP);
addSerialAgg(GLOBAL_SQL_STDDEV_POP, SERIAL_GLOBAL_SQL_STDDEV_POP);
addAgg(SERIAL_SQL_STDDEV_POP);
addAgg(SERIAL_LOCAL_SQL_STDDEV_POP);
addAgg(SERIAL_GLOBAL_SQL_STDDEV_POP);
addLocalAgg(SERIAL_SQL_STDDEV_POP, SERIAL_LOCAL_SQL_STDDEV_POP);
addIntermediateAgg(SERIAL_SQL_STDDEV_POP, SERIAL_INTERMEDIATE_SQL_STDDEV_POP);
addIntermediateAgg(SERIAL_LOCAL_SQL_STDDEV_POP, SERIAL_INTERMEDIATE_SQL_STDDEV_POP);
addIntermediateAgg(SERIAL_GLOBAL_SQL_STDDEV_POP, SERIAL_INTERMEDIATE_SQL_STDDEV_POP);
addGlobalAgg(SERIAL_SQL_STDDEV_POP, SERIAL_GLOBAL_SQL_STDDEV_POP);
// SQL VAR_SAMP
addAgg(SQL_VAR_SAMP);
addAgg(LOCAL_SQL_VAR_SAMP);
addAgg(GLOBAL_SQL_VAR_SAMP);
addLocalAgg(SQL_VAR_SAMP, LOCAL_SQL_VAR_SAMP);
addIntermediateAgg(SQL_VAR_SAMP, INTERMEDIATE_SQL_VAR_SAMP);
addIntermediateAgg(LOCAL_SQL_VAR_SAMP, INTERMEDIATE_SQL_VAR_SAMP);
addIntermediateAgg(GLOBAL_SQL_VAR_SAMP, INTERMEDIATE_SQL_VAR_SAMP);
addGlobalAgg(SQL_VAR_SAMP, GLOBAL_SQL_VAR_SAMP);
addScalarAgg(SQL_VAR_SAMP, SCALAR_SQL_VAR_SAMP);
addSerialAgg(SQL_VAR_SAMP, SERIAL_SQL_VAR_SAMP);
addSerialAgg(LOCAL_SQL_VAR_SAMP, SERIAL_LOCAL_SQL_VAR_SAMP);
addSerialAgg(GLOBAL_SQL_VAR_SAMP, SERIAL_GLOBAL_SQL_VAR_SAMP);
addAgg(SERIAL_SQL_VAR_SAMP);
addAgg(SERIAL_LOCAL_SQL_VAR_SAMP);
addAgg(SERIAL_GLOBAL_SQL_VAR_SAMP);
addLocalAgg(SERIAL_SQL_VAR_SAMP, SERIAL_LOCAL_SQL_VAR_SAMP);
addIntermediateAgg(SERIAL_SQL_VAR_SAMP, SERIAL_INTERMEDIATE_SQL_VAR_SAMP);
addIntermediateAgg(SERIAL_LOCAL_SQL_VAR_SAMP, SERIAL_INTERMEDIATE_SQL_VAR_SAMP);
addIntermediateAgg(SERIAL_GLOBAL_SQL_VAR_SAMP, SERIAL_INTERMEDIATE_SQL_VAR_SAMP);
addGlobalAgg(SERIAL_SQL_VAR_SAMP, SERIAL_GLOBAL_SQL_VAR_SAMP);
// SQL VAR_POP
addAgg(SQL_VAR_POP);
addAgg(LOCAL_SQL_VAR_POP);
addAgg(GLOBAL_SQL_VAR_POP);
addLocalAgg(SQL_VAR_POP, LOCAL_SQL_VAR_POP);
addIntermediateAgg(SQL_VAR_POP, INTERMEDIATE_SQL_VAR_POP);
addIntermediateAgg(LOCAL_SQL_VAR_POP, INTERMEDIATE_SQL_VAR_POP);
addIntermediateAgg(GLOBAL_SQL_VAR_POP, INTERMEDIATE_SQL_VAR_POP);
addGlobalAgg(SQL_VAR_POP, GLOBAL_SQL_VAR_POP);
addScalarAgg(SQL_VAR_POP, SCALAR_SQL_VAR_POP);
addSerialAgg(SQL_VAR_POP, SERIAL_SQL_VAR_POP);
addSerialAgg(LOCAL_SQL_VAR_POP, SERIAL_LOCAL_SQL_VAR_POP);
addSerialAgg(GLOBAL_SQL_VAR_POP, SERIAL_GLOBAL_SQL_VAR_POP);
addAgg(SERIAL_SQL_VAR_POP);
addAgg(SERIAL_LOCAL_SQL_VAR_POP);
addAgg(SERIAL_GLOBAL_SQL_VAR_POP);
addLocalAgg(SERIAL_SQL_VAR_POP, SERIAL_LOCAL_SQL_VAR_POP);
addIntermediateAgg(SERIAL_SQL_VAR_POP, SERIAL_INTERMEDIATE_SQL_VAR_POP);
addIntermediateAgg(SERIAL_LOCAL_SQL_VAR_POP, SERIAL_INTERMEDIATE_SQL_VAR_POP);
addIntermediateAgg(SERIAL_GLOBAL_SQL_VAR_POP, SERIAL_INTERMEDIATE_SQL_VAR_POP);
addGlobalAgg(SERIAL_SQL_VAR_POP, SERIAL_GLOBAL_SQL_VAR_POP);
// SQL SKEWNESS
addAgg(SQL_SKEWNESS);
addAgg(LOCAL_SQL_SKEWNESS);
addAgg(GLOBAL_SQL_SKEWNESS);
addLocalAgg(SQL_SKEWNESS, LOCAL_SQL_SKEWNESS);
addIntermediateAgg(SQL_SKEWNESS, INTERMEDIATE_SQL_SKEWNESS);
addIntermediateAgg(LOCAL_SQL_SKEWNESS, INTERMEDIATE_SQL_SKEWNESS);
addIntermediateAgg(GLOBAL_SQL_SKEWNESS, INTERMEDIATE_SQL_SKEWNESS);
addGlobalAgg(SQL_SKEWNESS, GLOBAL_SQL_SKEWNESS);
addScalarAgg(SQL_SKEWNESS, SCALAR_SQL_SKEWNESS);
addSerialAgg(SQL_SKEWNESS, SERIAL_SQL_SKEWNESS);
addSerialAgg(LOCAL_SQL_SKEWNESS, SERIAL_LOCAL_SQL_SKEWNESS);
addSerialAgg(GLOBAL_SQL_SKEWNESS, SERIAL_GLOBAL_SQL_SKEWNESS);
addAgg(SERIAL_SQL_SKEWNESS);
addAgg(SERIAL_LOCAL_SQL_SKEWNESS);
addAgg(SERIAL_GLOBAL_SQL_SKEWNESS);
addLocalAgg(SERIAL_SQL_SKEWNESS, SERIAL_LOCAL_SQL_SKEWNESS);
addIntermediateAgg(SERIAL_SQL_SKEWNESS, SERIAL_INTERMEDIATE_SQL_SKEWNESS);
addIntermediateAgg(SERIAL_LOCAL_SQL_SKEWNESS, SERIAL_INTERMEDIATE_SQL_SKEWNESS);
addIntermediateAgg(SERIAL_GLOBAL_SQL_SKEWNESS, SERIAL_INTERMEDIATE_SQL_SKEWNESS);
addGlobalAgg(SERIAL_SQL_SKEWNESS, SERIAL_GLOBAL_SQL_SKEWNESS);
// SQL KURTOSIS
addAgg(SQL_KURTOSIS);
addAgg(LOCAL_SQL_KURTOSIS);
addAgg(GLOBAL_SQL_KURTOSIS);
addLocalAgg(SQL_KURTOSIS, LOCAL_SQL_KURTOSIS);
addIntermediateAgg(SQL_KURTOSIS, INTERMEDIATE_SQL_KURTOSIS);
addIntermediateAgg(LOCAL_SQL_KURTOSIS, INTERMEDIATE_SQL_KURTOSIS);
addIntermediateAgg(GLOBAL_SQL_KURTOSIS, INTERMEDIATE_SQL_KURTOSIS);
addGlobalAgg(SQL_KURTOSIS, GLOBAL_SQL_KURTOSIS);
addScalarAgg(SQL_KURTOSIS, SCALAR_SQL_KURTOSIS);
addSerialAgg(SQL_KURTOSIS, SERIAL_SQL_KURTOSIS);
addSerialAgg(LOCAL_SQL_KURTOSIS, SERIAL_LOCAL_SQL_KURTOSIS);
addSerialAgg(GLOBAL_SQL_KURTOSIS, SERIAL_GLOBAL_SQL_KURTOSIS);
addAgg(SERIAL_SQL_KURTOSIS);
addAgg(SERIAL_LOCAL_SQL_KURTOSIS);
addAgg(SERIAL_GLOBAL_SQL_KURTOSIS);
addLocalAgg(SERIAL_SQL_KURTOSIS, SERIAL_LOCAL_SQL_KURTOSIS);
addIntermediateAgg(SERIAL_SQL_KURTOSIS, SERIAL_INTERMEDIATE_SQL_KURTOSIS);
addIntermediateAgg(SERIAL_LOCAL_SQL_KURTOSIS, SERIAL_INTERMEDIATE_SQL_KURTOSIS);
addIntermediateAgg(SERIAL_GLOBAL_SQL_KURTOSIS, SERIAL_INTERMEDIATE_SQL_KURTOSIS);
addGlobalAgg(SERIAL_SQL_KURTOSIS, SERIAL_GLOBAL_SQL_KURTOSIS);
// SQL AVG DISTINCT
addDistinctAgg(SQL_AVG_DISTINCT, SQL_AVG);
addScalarAgg(SQL_AVG_DISTINCT, SCALAR_SQL_AVG_DISTINCT);
// SQL STDDEV_SAMP DISTINCT
addDistinctAgg(SQL_STDDEV_SAMP_DISTINCT, SQL_STDDEV_SAMP);
addScalarAgg(SQL_STDDEV_SAMP_DISTINCT, SCALAR_SQL_STDDEV_SAMP_DISTINCT);
// SQL STDDEV_POP DISTINCT
addDistinctAgg(SQL_STDDEV_POP_DISTINCT, SQL_STDDEV_POP);
addScalarAgg(SQL_STDDEV_POP_DISTINCT, SCALAR_SQL_STDDEV_POP_DISTINCT);
// SQL VAR_SAMP DISTINCT
addDistinctAgg(SQL_VAR_SAMP_DISTINCT, SQL_VAR_SAMP);
addScalarAgg(SQL_VAR_SAMP_DISTINCT, SCALAR_SQL_VAR_SAMP_DISTINCT);
// SQL VAR_POP DISTINCT
addDistinctAgg(SQL_VAR_POP_DISTINCT, SQL_VAR_POP);
addScalarAgg(SQL_VAR_POP_DISTINCT, SCALAR_SQL_VAR_POP_DISTINCT);
// SQL SKEWNESS DISTINCT
addDistinctAgg(SQL_SKEWNESS_DISTINCT, SQL_SKEWNESS);
addScalarAgg(SQL_SKEWNESS_DISTINCT, SCALAR_SQL_SKEWNESS_DISTINCT);
// SQL KURTOSIS DISTINCT
addDistinctAgg(SQL_KURTOSIS_DISTINCT, SQL_KURTOSIS);
addScalarAgg(SQL_KURTOSIS_DISTINCT, SCALAR_SQL_KURTOSIS_DISTINCT);
// SQL COUNT
addAgg(SQL_COUNT);
addLocalAgg(SQL_COUNT, SQL_COUNT);
addIntermediateAgg(SQL_COUNT, SQL_SUM);
addGlobalAgg(SQL_COUNT, SQL_SUM);
addScalarAgg(SQL_COUNT, SCALAR_SQL_COUNT);
addSerialAgg(SQL_COUNT, SERIAL_SQL_COUNT);
addAgg(SERIAL_SQL_COUNT);
addLocalAgg(SERIAL_SQL_COUNT, SERIAL_SQL_COUNT);
addIntermediateAgg(SERIAL_SQL_COUNT, SERIAL_SQL_SUM);
addGlobalAgg(SERIAL_SQL_COUNT, SERIAL_SQL_SUM);
// SQL COUNT DISTINCT
addDistinctAgg(SQL_COUNT_DISTINCT, SQL_COUNT);
addScalarAgg(SQL_COUNT_DISTINCT, SCALAR_SQL_COUNT_DISTINCT);
// SQL COUNTN
addAgg(SQL_COUNTN);
addLocalAgg(SQL_COUNTN, SQL_COUNTN);
addIntermediateAgg(SQL_COUNTN, SQL_SUM);
addGlobalAgg(SQL_COUNTN, SQL_SUM);
addScalarAgg(SQL_COUNTN, SCALAR_SQL_COUNTN);
addSerialAgg(SQL_COUNTN, SERIAL_SQL_COUNTN);
addAgg(SERIAL_SQL_COUNTN);
addLocalAgg(SERIAL_SQL_COUNTN, SERIAL_SQL_COUNTN);
addIntermediateAgg(SERIAL_SQL_COUNTN, SERIAL_SQL_SUM);
addGlobalAgg(SERIAL_SQL_COUNTN, SERIAL_SQL_SUM);
// SQL COUNTN DISTINCT
addDistinctAgg(SQL_COUNTN_DISTINCT, SQL_COUNTN);
addScalarAgg(SQL_COUNTN_DISTINCT, SCALAR_SQL_COUNTN_DISTINCT);
// SQL MAX
addAgg(SQL_MAX);
addAgg(LOCAL_SQL_MAX);
addAgg(GLOBAL_SQL_MAX);
addLocalAgg(SQL_MAX, LOCAL_SQL_MAX);
addIntermediateAgg(LOCAL_SQL_MAX, INTERMEDIATE_SQL_MAX);
addIntermediateAgg(GLOBAL_SQL_MAX, GLOBAL_SQL_MAX);
addIntermediateAgg(SQL_MAX, GLOBAL_SQL_MAX);
addGlobalAgg(SQL_MAX, GLOBAL_SQL_MAX);
addScalarAgg(SQL_MAX, SCALAR_SQL_MAX);
// SQL MAX DISTINCT
addDistinctAgg(SQL_MAX_DISTINCT, SQL_MAX);
addScalarAgg(SQL_MAX_DISTINCT, SCALAR_SQL_MAX_DISTINCT);
// SQL MIN
addAgg(SQL_MIN);
addAgg(LOCAL_SQL_MIN);
addAgg(GLOBAL_SQL_MIN);
addLocalAgg(SQL_MIN, LOCAL_SQL_MIN);
addIntermediateAgg(LOCAL_SQL_MIN, INTERMEDIATE_SQL_MIN);
addIntermediateAgg(GLOBAL_SQL_MIN, GLOBAL_SQL_MIN);
addIntermediateAgg(SQL_MIN, GLOBAL_SQL_MIN);
addGlobalAgg(SQL_MIN, GLOBAL_SQL_MIN);
addScalarAgg(SQL_MIN, SCALAR_SQL_MIN);
// SQL MIN DISTINCT
addDistinctAgg(SQL_MIN_DISTINCT, SQL_MIN);
addScalarAgg(SQL_MIN_DISTINCT, SCALAR_SQL_MIN_DISTINCT);
// SQL SUM
addAgg(SQL_SUM);
addAgg(LOCAL_SQL_SUM);
addAgg(GLOBAL_SQL_SUM);
addLocalAgg(SQL_SUM, LOCAL_SQL_SUM);
addIntermediateAgg(SQL_SUM, INTERMEDIATE_SQL_SUM);
addIntermediateAgg(LOCAL_SQL_SUM, INTERMEDIATE_SQL_SUM);
addIntermediateAgg(GLOBAL_SQL_SUM, INTERMEDIATE_SQL_SUM);
addGlobalAgg(SQL_SUM, GLOBAL_SQL_SUM);
addScalarAgg(SQL_SUM, SCALAR_SQL_SUM);
addAgg(SERIAL_SQL_SUM);
addAgg(SERIAL_LOCAL_SQL_SUM);
addAgg(SERIAL_GLOBAL_SQL_SUM);
addSerialAgg(SQL_SUM, SERIAL_SQL_SUM);
addSerialAgg(LOCAL_SQL_SUM, SERIAL_LOCAL_SQL_SUM);
addSerialAgg(GLOBAL_SQL_SUM, SERIAL_GLOBAL_SQL_SUM);
addLocalAgg(SERIAL_SQL_SUM, SERIAL_LOCAL_SQL_SUM);
addIntermediateAgg(SERIAL_SQL_SUM, SERIAL_SQL_SUM);
addIntermediateAgg(SERIAL_LOCAL_SQL_SUM, SERIAL_INTERMEDIATE_SQL_SUM);
addIntermediateAgg(SERIAL_GLOBAL_SQL_SUM, SERIAL_INTERMEDIATE_SQL_SUM);
addGlobalAgg(SERIAL_SQL_SUM, SERIAL_GLOBAL_SQL_SUM);
// SQL SUM DISTINCT
addDistinctAgg(SQL_SUM_DISTINCT, SQL_SUM);
addScalarAgg(SQL_SUM_DISTINCT, SCALAR_SQL_SUM_DISTINCT);
// SQL MEDIAN
addAgg(SQL_MEDIAN);
addAgg(LOCAL_SQL_MEDIAN);
addAgg(GLOBAL_SQL_MEDIAN);
addLocalAgg(SQL_MEDIAN, LOCAL_SQL_MEDIAN);
addIntermediateAgg(SQL_MEDIAN, INTERMEDIATE_SQL_MEDIAN);
addIntermediateAgg(LOCAL_SQL_MEDIAN, INTERMEDIATE_SQL_MEDIAN);
addIntermediateAgg(GLOBAL_SQL_MEDIAN, INTERMEDIATE_SQL_MEDIAN);
addGlobalAgg(SQL_MEDIAN, GLOBAL_SQL_MEDIAN);
addScalarAgg(MEDIAN, SCALAR_MEDIAN);
addScalarAgg(SQL_MEDIAN, SCALAR_SQL_MEDIAN);
registerAggFunctionProperties(SCALAR_SQL_MEDIAN, AggregateFunctionProperty.NO_FRAME_CLAUSE,
AggregateFunctionProperty.NO_ORDER_CLAUSE);
// SPATIAL AGGREGATES
addAgg(ST_UNION_AGG);
addLocalAgg(ST_UNION_AGG, ST_UNION_AGG);
addIntermediateAgg(ST_UNION_AGG, ST_UNION_AGG);
addGlobalAgg(ST_UNION_AGG, ST_UNION_AGG);
addScalarAgg(ST_UNION_AGG, SCALAR_ST_UNION_AGG);
addDistinctAgg(ST_UNION_AGG_DISTINCT, ST_UNION_AGG);
addScalarAgg(ST_UNION_AGG_DISTINCT, SCALAR_ST_UNION_AGG_DISTINCT);
addAgg(ST_UNION_SQL_AGG);
addLocalAgg(ST_UNION_SQL_AGG, ST_UNION_SQL_AGG);
addIntermediateAgg(ST_UNION_SQL_AGG, ST_UNION_SQL_AGG);
addGlobalAgg(ST_UNION_SQL_AGG, ST_UNION_SQL_AGG);
addScalarAgg(ST_UNION_SQL_AGG, SCALAR_ST_UNION_SQL_AGG);
addDistinctAgg(ST_UNION_SQL_AGG_DISTINCT, ST_UNION_SQL_AGG);
addScalarAgg(ST_UNION_SQL_AGG_DISTINCT, SCALAR_ST_UNION_SQL_AGG_DISTINCT);
// SQL UNION MBR
addAgg(SQL_UNION_MBR);
addAgg(LOCAL_SQL_UNION_MBR);
addAgg(GLOBAL_SQL_UNION_MBR);
addLocalAgg(SQL_UNION_MBR, LOCAL_SQL_UNION_MBR);
addIntermediateAgg(LOCAL_SQL_UNION_MBR, INTERMEDIATE_SQL_UNION_MBR);
addIntermediateAgg(GLOBAL_SQL_UNION_MBR, GLOBAL_SQL_UNION_MBR);
addIntermediateAgg(SQL_UNION_MBR, GLOBAL_SQL_UNION_MBR);
addGlobalAgg(SQL_UNION_MBR, GLOBAL_SQL_UNION_MBR);
addScalarAgg(SQL_UNION_MBR, SCALAR_SQL_UNION_MBR);
}