Class PercentileAggFunction<T>
java.lang.Object
org.apache.flink.table.functions.UserDefinedFunction
org.apache.flink.table.functions.ImperativeAggregateFunction<T,ACC>
org.apache.flink.table.functions.AggregateFunction<T,ACC>
org.apache.flink.table.runtime.functions.aggregate.BuiltInAggregateFunction<T,PercentileAggFunction.PercentileAccumulator>
org.apache.flink.table.runtime.functions.aggregate.PercentileAggFunction<T>
- All Implemented Interfaces:
Serializable,org.apache.flink.table.functions.FunctionDefinition
- Direct Known Subclasses:
PercentileAggFunction.MultiPercentileAggFunction,PercentileAggFunction.SinglePercentileAggFunction
@Internal
public abstract class PercentileAggFunction<T>
extends BuiltInAggregateFunction<T,PercentileAggFunction.PercentileAccumulator>
Built-in PERCENTILE aggregate function.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classPercentile agg function with multiple percentage parameters.static classAccumulator for PERCENTILE.static classPercentile agg function with only one percentage parameter. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final org.apache.flink.table.types.DataTypeprotected final org.apache.flink.table.types.DataType -
Constructor Summary
ConstructorsConstructorDescriptionPercentileAggFunction(org.apache.flink.table.types.logical.LogicalType inputType, org.apache.flink.table.types.logical.LogicalType frequencyType) -
Method Summary
Modifier and TypeMethodDescriptionvoidaccumulate(PercentileAggFunction.PercentileAccumulator acc, Object value, Double percentage) voidaccumulate(PercentileAggFunction.PercentileAccumulator acc, Object value, Double[] percentage) voidaccumulate(PercentileAggFunction.PercentileAccumulator acc, Object value, Double[] percentage, Number frequency) voidaccumulate(PercentileAggFunction.PercentileAccumulator acc, Object value, Double percentage, Number frequency) org.apache.flink.table.types.DataTypevoidmerge(PercentileAggFunction.PercentileAccumulator acc, Iterable<PercentileAggFunction.PercentileAccumulator> its) voidretract(PercentileAggFunction.PercentileAccumulator acc, Object value, Double percentage) voidretract(PercentileAggFunction.PercentileAccumulator acc, Object value, Double[] percentage) voidretract(PercentileAggFunction.PercentileAccumulator acc, Object value, Double[] percentage, Number frequency) voidretract(PercentileAggFunction.PercentileAccumulator acc, Object value, Double percentage, Number frequency) Methods inherited from class org.apache.flink.table.runtime.functions.aggregate.BuiltInAggregateFunction
getArgumentDataTypes, getOutputDataType, getRequirements, getTypeInference, isDeterministicMethods inherited from class org.apache.flink.table.functions.AggregateFunction
getKind, getValueMethods inherited from class org.apache.flink.table.functions.ImperativeAggregateFunction
getAccumulatorType, getResultTypeMethods inherited from class org.apache.flink.table.functions.UserDefinedFunction
close, functionIdentifier, open, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.flink.table.functions.FunctionDefinition
supportsConstantFolding
-
Field Details
-
valueType
protected final transient org.apache.flink.table.types.DataType valueType -
frequencyType
protected final transient org.apache.flink.table.types.DataType frequencyType
-
-
Constructor Details
-
PercentileAggFunction
public PercentileAggFunction(org.apache.flink.table.types.logical.LogicalType inputType, org.apache.flink.table.types.logical.LogicalType frequencyType)
-
-
Method Details
-
getAccumulatorDataType
public org.apache.flink.table.types.DataType getAccumulatorDataType()- Overrides:
getAccumulatorDataTypein classBuiltInAggregateFunction<T,PercentileAggFunction.PercentileAccumulator>
-
createAccumulator
- Specified by:
createAccumulatorin classorg.apache.flink.table.functions.ImperativeAggregateFunction<T,PercentileAggFunction.PercentileAccumulator>
-
accumulate
public void accumulate(PercentileAggFunction.PercentileAccumulator acc, @Nullable Object value, Double percentage) throws Exception - Throws:
Exception
-
accumulate
public void accumulate(PercentileAggFunction.PercentileAccumulator acc, @Nullable Object value, Double percentage, @Nullable Number frequency) throws Exception - Throws:
Exception
-
accumulate
public void accumulate(PercentileAggFunction.PercentileAccumulator acc, @Nullable Object value, Double[] percentage) throws Exception - Throws:
Exception
-
accumulate
public void accumulate(PercentileAggFunction.PercentileAccumulator acc, @Nullable Object value, Double[] percentage, @Nullable Number frequency) throws Exception - Throws:
Exception
-
retract
public void retract(PercentileAggFunction.PercentileAccumulator acc, @Nullable Object value, Double percentage) throws Exception - Throws:
Exception
-
retract
public void retract(PercentileAggFunction.PercentileAccumulator acc, @Nullable Object value, Double percentage, @Nullable Number frequency) throws Exception - Throws:
Exception
-
retract
public void retract(PercentileAggFunction.PercentileAccumulator acc, @Nullable Object value, Double[] percentage) throws Exception - Throws:
Exception
-
retract
public void retract(PercentileAggFunction.PercentileAccumulator acc, @Nullable Object value, Double[] percentage, @Nullable Number frequency) throws Exception - Throws:
Exception
-
merge
public void merge(PercentileAggFunction.PercentileAccumulator acc, Iterable<PercentileAggFunction.PercentileAccumulator> its) throws Exception - Throws:
Exception
-