Class DruidSqlToRelConverter
java.lang.Object
org.apache.calcite.sql2rel.SqlToRelConverter
org.apache.druid.sql.calcite.planner.DruidSqlToRelConverter
public class DruidSqlToRelConverter
extends org.apache.calcite.sql2rel.SqlToRelConverter
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.calcite.sql2rel.SqlToRelConverter
org.apache.calcite.sql2rel.SqlToRelConverter.Blackboard, org.apache.calcite.sql2rel.SqlToRelConverter.Config, org.apache.calcite.sql2rel.SqlToRelConverter.SqlIdentifierFinder -
Field Summary
Fields inherited from class org.apache.calcite.sql2rel.SqlToRelConverter
catalogReader, cluster, config, CONFIG, DEFAULT_IN_SUB_QUERY_THRESHOLD, DEFAULT_IN_SUBQUERY_THRESHOLD, leaves, rexBuilder, SQL2REL_LOGGER, typeFactory, validator, viewExpander -
Constructor Summary
ConstructorsConstructorDescriptionDruidSqlToRelConverter(org.apache.calcite.plan.RelOptTable.ViewExpander viewExpander, org.apache.calcite.sql.validate.SqlValidator validator, org.apache.calcite.prepare.Prepare.CatalogReader catalogReader, org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.sql2rel.SqlRexConvertletTable convertletTable, org.apache.calcite.sql2rel.SqlToRelConverter.Config config) -
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.calcite.rel.RelNodeconvertInsert(org.apache.calcite.sql.SqlInsert call) Convert a DruidINSERTorREPLACEstatement.Methods inherited from class org.apache.calcite.sql2rel.SqlToRelConverter
addConvertedNonCorrSubqs, adjustInputRef, afterTableFunction, collectInsertTargets, config, convertAgg, convertCollectionTable, convertColumnList, convertDynamicParam, convertExpression, convertExpression, convertExtendedExpression, convertFrom, convertFrom, convertMatchRecognize, convertOrder, convertOrderItem, convertPivot, convertQuery, convertQueryRecursive, convertSelect, convertSelectImpl, convertSetOp, convertToSingleValueSubq, convertUnpivot, convertValues, convertWith, createAggImpl, createAggregate, createBlackboard, createJoin, decorrelate, decorrelateQuery, enableDecorrelation, extraSelectItems, flattenTypes, gatherOrderExprs, getCluster, getDynamicParamCount, getDynamicParamCountInExplain, getDynamicParamType, getInSubqueryThreshold, getMapConvertedNonCorrSubqs, getRexBuilder, getSystemFields, getTargetTable, isOrdered, isTrimUnusedFields, newFieldTrimmer, setDynamicParamCountInExplain, setSubQueryConverter, toRel, trimUnusedFields
-
Constructor Details
-
DruidSqlToRelConverter
public DruidSqlToRelConverter(org.apache.calcite.plan.RelOptTable.ViewExpander viewExpander, org.apache.calcite.sql.validate.SqlValidator validator, org.apache.calcite.prepare.Prepare.CatalogReader catalogReader, org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.sql2rel.SqlRexConvertletTable convertletTable, org.apache.calcite.sql2rel.SqlToRelConverter.Config config)
-
-
Method Details
-
convertInsert
protected org.apache.calcite.rel.RelNode convertInsert(org.apache.calcite.sql.SqlInsert call) Convert a DruidINSERTorREPLACEstatement. The code is the same as the normal conversion, except we don't actually create the final modify node. Druid has its own special way to handle inserts. (This should probably change in some future, but doing so requires changes in the SQL engine and MSQ, which is a bit invasive.)- Overrides:
convertInsertin classorg.apache.calcite.sql2rel.SqlToRelConverter
-