| Modifier and Type | Method and Description |
|---|---|
DruidExpression |
DimensionExpression.getDruidExpression() |
static DruidExpression |
Aggregations.toDruidExpressionForNumericAggregator(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode)
Translate a Calcite
RexNode to a Druid expression for the aggregators that require numeric type inputs. |
| Modifier and Type | Method and Description |
|---|---|
static List<DruidExpression> |
Aggregations.getArgumentsForSimpleAggregator(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rel.core.AggregateCall call,
org.apache.calcite.rel.core.Project project)
Get Druid expressions that correspond to "simple" aggregator inputs.
|
| Modifier and Type | Method and Description |
|---|---|
static DimensionExpression |
DimensionExpression.ofSimpleColumn(String outputName,
DruidExpression expression,
ColumnType outputType)
Create a dimension expression for direct column access or simple extractions
|
static DimensionExpression |
DimensionExpression.ofVirtualColumn(String virtualColumn,
String outputName,
DruidExpression expression,
ColumnType outputType)
Create a dimension expression for a virtual column
|
| Modifier and Type | Method and Description |
|---|---|
static DruidExpression |
OperatorConversions.convertCall(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
DruidExpression.DruidExpressionCreator expressionFunction) |
static DruidExpression |
OperatorConversions.convertCall(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
String functionName)
Deprecated.
|
static DruidExpression |
OperatorConversions.convertCall(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
String functionName,
Function<List<DruidExpression>,SimpleExtraction> simpleExtractionFunction)
Deprecated.
|
static DruidExpression |
OperatorConversions.convertCallBuilder(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
DruidExpression.ExpressionGenerator expressionGenerator) |
static DruidExpression |
OperatorConversions.convertCallWithPostAggOperands(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
DruidExpression.DruidExpressionCreator expressionFunction,
PostAggregatorVisitor postAggregatorVisitor) |
static DruidExpression |
OperatorConversions.convertDirectCall(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
String functionName) |
static DruidExpression |
OperatorConversions.convertDirectCallWithExtraction(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
String functionName,
Function<List<DruidExpression>,SimpleExtraction> simpleExtractionFunction) |
DruidExpression |
DruidExpression.DruidExpressionCreator.create(List<DruidExpression> arguments) |
static DruidExpression |
DruidExpression.fromColumn(String column)
Deprecated.
|
static DruidExpression |
DruidExpression.fromExpression(String expression)
Deprecated.
use
ofExpression(ColumnType, ExpressionGenerator, List) instead to participate in virtual
column and expression optimization |
static DruidExpression |
DruidExpression.fromFunctionCall(String functionName,
List<DruidExpression> args)
Deprecated.
use
ofFunctionCall(ColumnType, String, List) instead to participate in virtual column and
expression optimization |
DruidExpression |
DruidExpression.map(Function<SimpleExtraction,SimpleExtraction> extractionMap,
Function<String,String> expressionMap) |
static DruidExpression |
DruidExpression.of(SimpleExtraction simpleExtraction,
String expression)
Deprecated.
use
ofExpression(ColumnType, SimpleExtraction, ExpressionGenerator, List) instead to participate
in virtual column and expression optimization |
static DruidExpression |
DruidExpression.ofColumn(ColumnType columnType,
String column) |
static DruidExpression |
DruidExpression.ofColumn(ColumnType columnType,
String column,
SimpleExtraction simpleExtraction) |
static DruidExpression |
DruidExpression.ofExpression(ColumnType columnType,
DruidExpression.ExpressionGenerator expressionGenerator,
List<DruidExpression> arguments) |
static DruidExpression |
DruidExpression.ofExpression(ColumnType columnType,
SimpleExtraction simpleExtraction,
DruidExpression.ExpressionGenerator expressionGenerator,
List<DruidExpression> arguments) |
static DruidExpression |
DruidExpression.ofFunctionCall(ColumnType columnType,
String functionName,
List<DruidExpression> args) |
static DruidExpression |
DruidExpression.ofLiteral(ColumnType columnType,
String literal) |
static DruidExpression |
DruidExpression.ofStringLiteral(String s) |
static DruidExpression |
DruidExpression.ofVirtualColumn(ColumnType type,
DruidExpression.ExpressionGenerator expressionGenerator,
List<DruidExpression> arguments,
DruidExpression.VirtualColumnCreator virtualColumnCreator) |
static DruidExpression |
Expressions.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode)
Translate a Calcite
RexNode to a Druid expression for projections or the aggregators that don't
require numeric inputs. |
DruidExpression |
AliasedOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
UnaryFunctionOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
DirectOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
BinaryOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
UnarySuffixOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
UnaryPrefixOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
SqlOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode)
Translate a Calcite
RexNode to a Druid expression. |
static DruidExpression |
Expressions.toDruidExpressionWithPostAggOperands(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
PostAggregatorVisitor postAggregatorVisitor) |
DruidExpression |
AliasedOperatorConversion.toDruidExpressionWithPostAggOperands(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
PostAggregatorVisitor postAggregatorVisitor) |
DruidExpression |
DirectOperatorConversion.toDruidExpressionWithPostAggOperands(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
PostAggregatorVisitor postAggregatorVisitor) |
DruidExpression |
BinaryOperatorConversion.toDruidExpressionWithPostAggOperands(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
PostAggregatorVisitor postAggregatorVisitor) |
default DruidExpression |
SqlOperatorConversion.toDruidExpressionWithPostAggOperands(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
PostAggregatorVisitor postAggregatorVisitor)
Translate a Calcite
RexNode to a Druid expression, with the possibility of having postagg operands. |
DruidExpression |
DruidExpression.visit(DruidExpression.DruidExpressionShuttle shuttle)
Visit all sub
DruidExpression (the arguments of this expression), allowing the
DruidExpression.DruidExpressionShuttle to potentially rewrite these arguments with new DruidExpression, finally
building a new version of this DruidExpression with updated arguments. |
DruidExpression |
DruidExpression.DruidExpressionShuttle.visit(DruidExpression expression) |
DruidExpression |
DruidExpression.withArguments(List<DruidExpression> newArgs) |
| Modifier and Type | Method and Description |
|---|---|
List<DruidExpression> |
DruidExpression.getArguments()
Get sub
DruidExpression arguments of this expression |
static List<DruidExpression> |
Expressions.toDruidExpressions(PlannerContext plannerContext,
RowSignature rowSignature,
List<org.apache.calcite.rex.RexNode> rexNodes)
Translate a list of Calcite
RexNode to Druid expressions. |
static List<DruidExpression> |
Expressions.toDruidExpressionsWithPostAggOperands(PlannerContext plannerContext,
RowSignature rowSignature,
List<org.apache.calcite.rex.RexNode> rexNodes,
PostAggregatorVisitor postAggregatorVisitor)
Translate a list of Calcite
RexNode to Druid expressions, with the possibility of having postagg operands. |
default List<DruidExpression> |
DruidExpression.DruidExpressionShuttle.visitAll(List<DruidExpression> expressions) |
| Modifier and Type | Method and Description |
|---|---|
static TimestampFloorExprMacro.TimestampFloorExpr |
Expressions.asTimestampFloorExpr(DruidExpression expression,
ExprMacroTable macroTable) |
static String |
DruidExpression.functionCall(String functionName,
DruidExpression... args)
Deprecated.
use
functionCall(String) instead |
static Granularity |
Expressions.toQueryGranularity(DruidExpression expression,
ExprMacroTable macroTable)
Converts an expression to a Granularity, if possible.
|
DruidExpression |
DruidExpression.DruidExpressionShuttle.visit(DruidExpression expression) |
| Modifier and Type | Method and Description |
|---|---|
String |
DruidExpression.ExpressionGenerator.compile(List<DruidExpression> arguments) |
String |
DruidExpression.IdentifierExpressionGenerator.compile(List<DruidExpression> arguments) |
String |
DruidExpression.LiteralExpressionGenerator.compile(List<DruidExpression> arguments) |
static DruidExpression |
OperatorConversions.convertCall(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
String functionName,
Function<List<DruidExpression>,SimpleExtraction> simpleExtractionFunction)
Deprecated.
|
static DruidExpression |
OperatorConversions.convertDirectCallWithExtraction(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode,
String functionName,
Function<List<DruidExpression>,SimpleExtraction> simpleExtractionFunction) |
DruidExpression |
DruidExpression.DruidExpressionCreator.create(List<DruidExpression> arguments) |
static DruidExpression |
DruidExpression.fromFunctionCall(String functionName,
List<DruidExpression> args)
Deprecated.
use
ofFunctionCall(ColumnType, String, List) instead to participate in virtual column and
expression optimization |
static String |
DruidExpression.functionCall(String functionName,
List<DruidExpression> args)
Deprecated.
use
functionCall(String) instead |
static DruidExpression |
DruidExpression.ofExpression(ColumnType columnType,
DruidExpression.ExpressionGenerator expressionGenerator,
List<DruidExpression> arguments) |
static DruidExpression |
DruidExpression.ofExpression(ColumnType columnType,
SimpleExtraction simpleExtraction,
DruidExpression.ExpressionGenerator expressionGenerator,
List<DruidExpression> arguments) |
static DruidExpression |
DruidExpression.ofFunctionCall(ColumnType columnType,
String functionName,
List<DruidExpression> args) |
static DruidExpression |
DruidExpression.ofVirtualColumn(ColumnType type,
DruidExpression.ExpressionGenerator expressionGenerator,
List<DruidExpression> arguments,
DruidExpression.VirtualColumnCreator virtualColumnCreator) |
default List<DruidExpression> |
DruidExpression.DruidExpressionShuttle.visitAll(List<DruidExpression> expressions) |
DruidExpression |
DruidExpression.withArguments(List<DruidExpression> newArgs) |
| Modifier and Type | Method and Description |
|---|---|
static DruidExpression |
TimeExtractOperatorConversion.applyTimeExtract(DruidExpression timeExpression,
TimestampExtractExprMacro.Unit unit,
org.joda.time.DateTimeZone timeZone) |
static DruidExpression |
TimeFloorOperatorConversion.applyTimestampFloor(DruidExpression input,
PeriodGranularity granularity,
ExprMacroTable macroTable)
Function that floors a DruidExpression to a particular granularity.
|
static DruidExpression |
TrimOperatorConversion.makeTrimExpression(org.apache.calcite.sql.fun.SqlTrimFunction.Flag trimStyle,
DruidExpression stringExpression,
DruidExpression charsExpression,
ColumnType druidType) |
DruidExpression |
TimestampToMillisOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
LTrimOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
StrposOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
NestedDataOperatorConversions.JsonPathsOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
NestedDataOperatorConversions.JsonKeysOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
NestedDataOperatorConversions.JsonQueryOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
NestedDataOperatorConversions.JsonValueReturningTypeOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
NestedDataOperatorConversions.JsonValueAnyOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
NestedDataOperatorConversions.JsonObjectOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
NestedDataOperatorConversions.ToJsonStringOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
NestedDataOperatorConversions.ParseJsonOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
NestedDataOperatorConversions.TryParseJsonOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
RoundOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
TimeShiftOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
TimeParseOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
TimeFloorOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
ParseLongOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
TimeExtractOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
TimeFormatOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
MillisToTimestampOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
TimeArithmeticOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
RightOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
DateTruncOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
CastOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
LeftOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
TruncateOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
CeilOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
RPadOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
RegexpLikeOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
FloorOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
RegexpExtractOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
StringFormatOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
TimeCeilOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
RepeatOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
BTrimOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
QueryLookupOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
SubstringOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
ExtractOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
HumanReadableFormatOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
RTrimOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
LPadOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
TrimOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
DruidExpression |
PositionOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
| Modifier and Type | Method and Description |
|---|---|
static List<DruidExpression> |
TimeFloorOperatorConversion.toTimestampFloorOrCeilArgs(PlannerContext plannerContext,
RowSignature rowSignature,
List<org.apache.calcite.rex.RexNode> operands)
Function that converts SQL TIME_FLOOR or TIME_CEIL args to Druid expression "timestamp_floor" or "timestamp_ceil"
args.
|
| Modifier and Type | Method and Description |
|---|---|
static DruidExpression |
TimeExtractOperatorConversion.applyTimeExtract(DruidExpression timeExpression,
TimestampExtractExprMacro.Unit unit,
org.joda.time.DateTimeZone timeZone) |
static DruidExpression |
TimeFloorOperatorConversion.applyTimestampFloor(DruidExpression input,
PeriodGranularity granularity,
ExprMacroTable macroTable)
Function that floors a DruidExpression to a particular granularity.
|
static DruidExpression |
TrimOperatorConversion.makeTrimExpression(org.apache.calcite.sql.fun.SqlTrimFunction.Flag trimStyle,
DruidExpression stringExpression,
DruidExpression charsExpression,
ColumnType druidType) |
| Modifier and Type | Method and Description |
|---|---|
protected static DimFilter |
BaseExpressionDimFilterOperatorConversion.toExpressionFilter(PlannerContext plannerContext,
String druidFunctionName,
List<DruidExpression> druidExpressions) |
| Modifier and Type | Method and Description |
|---|---|
DruidExpression |
ExternalOperatorConversion.toDruidExpression(PlannerContext plannerContext,
RowSignature rowSignature,
org.apache.calcite.rex.RexNode rexNode) |
| Modifier and Type | Method and Description |
|---|---|
List<DruidExpression> |
VirtualColumnRegistry.findVirtualColumnExpressions(List<String> allColumns)
Given a list of column names, find any corresponding
VirtualColumn with the same name |
| Modifier and Type | Method and Description |
|---|---|
String |
VirtualColumnRegistry.getOrCreateVirtualColumnForExpression(DruidExpression expression,
ColumnType typeHint)
|
String |
VirtualColumnRegistry.getOrCreateVirtualColumnForExpression(DruidExpression expression,
org.apache.calcite.rel.type.RelDataType typeHint)
|
VirtualColumn |
VirtualColumnRegistry.getOrCreateVirtualColumnForExpression(PlannerContext plannerContext,
DruidExpression expression,
ColumnType valueType)
Deprecated.
|
VirtualColumn |
VirtualColumnRegistry.getOrCreateVirtualColumnForExpression(PlannerContext plannerContext,
DruidExpression expression,
org.apache.calcite.rel.type.RelDataType dataType)
Deprecated.
|
String |
VirtualColumnRegistry.getVirtualColumnByExpression(DruidExpression expression,
org.apache.calcite.rel.type.RelDataType typeHint) |
Copyright © 2011–2022 The Apache Software Foundation. All rights reserved.