/** * Converts an expression from {@link SqlNode} to {@link RexNode} format. * * @param node Expression to translate * @return Converted expression */ public RexNode convertExpression( SqlNode node) { Map<String, RelDataType> nameToTypeMap = Collections.emptyMap(); Blackboard bb = createBlackboard( new ParameterScope((SqlValidatorImpl) validator, nameToTypeMap), null); return bb.convertExpression(node); }
/** * Converts a SELECT statement's parse tree into a relational expression. */ public RelNode convertSelect(SqlSelect select) { final SqlValidatorScope selectScope = validator.getWhereScope(select); final Blackboard bb = createBlackboard(selectScope, null); convertSelectImpl(bb, select); return bb.root; }
/** * Converts a SELECT statement's parse tree into a relational expression. */ public RelNode convertValues( SqlCall values, RelDataType targetRowType) { final SqlValidatorScope scope = validator.getOverScope(values); assert scope != null; final Blackboard bb = createBlackboard(scope, null); convertValuesImpl(bb, values, targetRowType); return bb.root; }
/** * Converts an expression from {@link SqlNode} to {@link RexNode} format, * mapping identifier references to predefined expressions. * * @param node Expression to translate * @param nameToNodeMap map from String to {@link RexNode}; when an * {@link SqlIdentifier} is encountered, it is used as a * key and translated to the corresponding value from * this map * @return Converted expression */ public RexNode convertExpression( SqlNode node, Map<String, RexNode> nameToNodeMap) { final Map<String, RelDataType> nameToTypeMap = new HashMap<String, RelDataType>(); for (Map.Entry<String, RexNode> entry : nameToNodeMap.entrySet()) { nameToTypeMap.put(entry.getKey(), entry.getValue().getType()); } Blackboard bb = createBlackboard( new ParameterScope((SqlValidatorImpl) validator, nameToTypeMap), nameToNodeMap); return bb.convertExpression(node); }
? validator.getSelectScope((SqlSelect) seek) : null; final Blackboard seekBb = createBlackboard(seekScope, null); RelNode seekRel = convertQueryOrInList(seekBb, seek);
Blackboard usedBb; if (null != nss) { usedBb = createBlackboard(nss.getScope(), null); } else { usedBb = createBlackboard( new ListScope(bb.scope) { public SqlNode getNode() {
for (SqlNode rowConstructor1 : values.getOperandList()) { SqlCall rowConstructor = (SqlCall) rowConstructor1; Blackboard tmpBb = createBlackboard(bb.scope, null); replaceSubqueries(tmpBb, rowConstructor, RelOptUtil.Logic.TRUE_FALSE_UNKNOWN);
final SqlJoin join = (SqlJoin) from; final Blackboard fromBlackboard = createBlackboard(validator.getJoinScope(from), null); SqlNode left = join.getLeft(); SqlNode right = join.getRight(); final JoinType joinType = join.getJoinType(); final Blackboard leftBlackboard = createBlackboard( Util.first(validator.getJoinScope(left), ((DelegatingScope) bb.scope).getParent()), null); final Blackboard rightBlackboard = createBlackboard( Util.first(validator.getJoinScope(right), ((DelegatingScope) bb.scope).getParent()), null);
/** * Converts an expression from {@link SqlNode} to {@link RexNode} format. * * @param node Expression to translate * @return Converted expression */ public RexNode convertExpression( SqlNode node) { Map<String, RelDataType> nameToTypeMap = Collections.emptyMap(); Blackboard bb = createBlackboard( new ParameterScope((SqlValidatorImpl) validator, nameToTypeMap), null); return bb.convertExpression(node); }
/** * Converts a SELECT statement's parse tree into a relational expression. */ public RelNode convertSelect(SqlSelect select) { final SqlValidatorScope selectScope = validator.getWhereScope(select); final Blackboard bb = createBlackboard(selectScope, null); convertSelectImpl(bb, select); return bb.root; }
/** * Converts a SELECT statement's parse tree into a relational expression. */ public RelNode convertSelect(SqlSelect select) { final SqlValidatorScope selectScope = validator.getWhereScope(select); final Blackboard bb = createBlackboard(selectScope, null); convertSelectImpl(bb, select); return bb.root; }
/** * Converts a SELECT statement's parse tree into a relational expression. */ public RelNode convertValues( SqlCall values, RelDataType targetRowType) { final SqlValidatorScope scope = validator.getOverScope(values); assert scope != null; final Blackboard bb = createBlackboard(scope, null); convertValuesImpl(bb, values, targetRowType); return bb.root; }
/** * Converts a SELECT statement's parse tree into a relational expression. */ public RelNode convertValues( SqlCall values, RelDataType targetRowType) { final SqlValidatorScope scope = validator.getOverScope(values); assert scope != null; final Blackboard bb = createBlackboard(scope, null); convertValuesImpl(bb, values, targetRowType); return bb.root; }
/** * Converts an expression from {@link SqlNode} to {@link RexNode} format. * * @param node Expression to translate * * @return Converted expression */ public RexNode convertExpression( SqlNode node) { Map<String, RelDataType> nameToTypeMap = Collections.emptyMap(); Blackboard bb = createBlackboard( new ParameterScope((SqlValidatorImpl) validator, nameToTypeMap), null); return bb.convertExpression(node); }
/** * Converts an expression from {@link SqlNode} to {@link RexNode} format, * mapping identifier references to predefined expressions. * * @param node Expression to translate * @param nameToNodeMap map from String to {@link RexNode}; when an * {@link SqlIdentifier} is encountered, it is used as a * key and translated to the corresponding value from * this map * @return Converted expression */ public RexNode convertExpression( SqlNode node, Map<String, RexNode> nameToNodeMap) { final Map<String, RelDataType> nameToTypeMap = new HashMap<String, RelDataType>(); for (Map.Entry<String, RexNode> entry : nameToNodeMap.entrySet()) { nameToTypeMap.put(entry.getKey(), entry.getValue().getType()); } Blackboard bb = createBlackboard( new ParameterScope((SqlValidatorImpl) validator, nameToTypeMap), nameToNodeMap); return bb.convertExpression(node); }
/** * Converts an expression from {@link SqlNode} to {@link RexNode} format, * mapping identifier references to predefined expressions. * * @param node Expression to translate * @param nameToNodeMap map from String to {@link RexNode}; when an {@link * SqlIdentifier} is encountered, it is used as a key and translated to the * corresponding value from this map * * @return Converted expression */ public RexNode convertExpression( SqlNode node, Map<String, RexNode> nameToNodeMap) { final Map<String, RelDataType> nameToTypeMap = new HashMap<String, RelDataType>(); for (Map.Entry<String, RexNode> entry : nameToNodeMap.entrySet()) { nameToTypeMap.put(entry.getKey(), entry.getValue().getType()); } Blackboard bb = createBlackboard( new ParameterScope((SqlValidatorImpl) validator, nameToTypeMap), nameToNodeMap); return bb.convertExpression(node); }
? validator.getSelectScope((SqlSelect) seek) : null; final Blackboard seekBb = createBlackboard(seekScope, null); RelNode seekRel = convertQueryOrInList(seekBb, seek);
? validator.getSelectScope((SqlSelect) seek) : null; final Blackboard seekBb = createBlackboard(seekScope, null); RelNode seekRel = convertQueryOrInList(seekBb, seek);
for (SqlNode rowConstructor1 : values.getOperands()) { SqlCall rowConstructor = (SqlCall) rowConstructor1; Blackboard tmpBb = createBlackboard(bb.scope, null); replaceSubqueries(tmpBb, rowConstructor); List<Pair<RexNode, String>> exps =
for (SqlNode rowConstructor1 : values.getOperandList()) { SqlCall rowConstructor = (SqlCall) rowConstructor1; Blackboard tmpBb = createBlackboard(bb.scope, null); replaceSubqueries(tmpBb, rowConstructor); List<Pair<RexNode, String>> exps =