final RexBuilder rexBuilder = dq.getCluster().getRexBuilder(); final List<RelDataTypeField> fields = dq.getRowType().getFieldList();
final RexBuilder rexBuilder = dq.getCluster().getRexBuilder(); final List<RelDataTypeField> fields = dq.getRowType().getFieldList();
/** Extends a DruidQuery. */ public static DruidQuery extendQuery(DruidQuery query, RelNode r) { final ImmutableList.Builder<RelNode> builder = ImmutableList.builder(); return DruidQuery.create(query.getCluster(), r.getTraitSet().replace(query.getConvention()), query.getTable(), query.druidTable, query.intervals, builder.addAll(query.rels).add(r).build()); }
/** Extends a DruidQuery. */ public static DruidQuery extendQuery(DruidQuery query, RelNode r) { final ImmutableList.Builder<RelNode> builder = ImmutableList.builder(); return DruidQuery.create(query.getCluster(), r.getTraitSet().replace(query.getConvention()), query.getTable(), query.druidTable, query.intervals, builder.addAll(query.rels).add(r).build(), query.getOperatorConversionMap()); }
/** Extends a DruidQuery. */ public static DruidQuery extendQuery(DruidQuery query, List<Interval> intervals) { return DruidQuery.create(query.getCluster(), query.getTraitSet(), query.getTable(), query.druidTable, intervals, query.rels); }
protected CalciteConnectionConfig getConnectionConfig() { return getCluster().getPlanner().getContext().unwrap(CalciteConnectionConfig.class); }
protected CalciteConnectionConfig getConnectionConfig() { return getCluster().getPlanner().getContext().unwrap(CalciteConnectionConfig.class); }
/** Extends a DruidQuery. */ public static DruidQuery extendQuery(DruidQuery query, List<Interval> intervals) { return DruidQuery.create(query.getCluster(), query.getTraitSet(), query.getTable(), query.druidTable, intervals, query.rels, query.getOperatorConversionMap()); }
@Override public RelDataType deriveRowType() { return getCluster().getTypeFactory().createStructType( Pair.right(Util.last(rels).getRowType().getFieldList()), getQuerySpec().fieldNames); }
@Override public RelDataType deriveRowType() { return getCluster().getTypeFactory().createStructType( Pair.right(Util.last(rels).getRowType().getFieldList()), getQuerySpec().fieldNames); }
final String originalFieldName = druidTable.getRowType(getCluster().getTypeFactory()) .getFieldList().get(ref.getIndex()).getName(); if (originalFieldName.equals(druidTable.timestampFieldName)) {
if (postProject != null) { final List<String> postProjectDimListBuilder = new ArrayList<>(); final RelDataType postAggInputRowType = getCluster().getTypeFactory() .createStructType(Pair.right(postProject.getInput().getRowType().getFieldList()), aggregateStageFieldNames);
if (node instanceof RexCall) { RexCall call = (RexCall) node; final String timeZone = query.getCluster().getPlanner().getContext() .unwrap(CalciteConnectionConfig.class).timeZone(); assert timeZone != null;
final String timeZone = query.getCluster().getPlanner().getContext() .unwrap(CalciteConnectionConfig.class).timeZone(); assert timeZone != null;
} else if (node instanceof RexCall) { RexCall call = (RexCall) node; final String timeZone = query.getCluster().getPlanner().getContext() .unwrap(CalciteConnectionConfig.class).timeZone(); assert timeZone != null;
Project project, Aggregate aggregate) { Filter filter = null; final RexBuilder builder = query.getCluster().getRexBuilder(); final RexExecutor executor = Util.first(query.getCluster().getPlanner().getExecutor(), RexUtil.EXECUTOR); final RelNode scan = query.rels.get(0); // first rel is the table scan filter, project, aggregate); return DruidQuery.create(query.getCluster(), aggregate.getTraitSet().replace(query.getConvention()), query.getTable(), query.druidTable, newNodes);
Project project, Aggregate aggregate) { Filter filter = null; final RexBuilder builder = query.getCluster().getRexBuilder(); final RexExecutor executor = Util.first(query.getCluster().getPlanner().getExecutor(), RexUtil.EXECUTOR); final RelNode scan = query.rels.get(0); // first rel is the table scan filter, project, aggregate); return DruidQuery.create(query.getCluster(), aggregate.getTraitSet().replace(query.getConvention()), query.getTable(), query.druidTable, newNodes);