static MutableJoin of(RelOptCluster cluster, MutableRel left, MutableRel right, RexNode condition, JoinRelType joinType, Set<CorrelationId> variablesStopped) { List<RelDataTypeField> fieldList = Collections.emptyList(); RelDataType rowType = SqlValidatorUtil.deriveJoinRowType(left.getRowType(), right.getRowType(), joinType, cluster.getTypeFactory(), null, fieldList); return new MutableJoin(rowType, left, right, condition, joinType, variablesStopped); }
rexBuilder.makeCall(convertedOriginalValuesExpr.op, newStructExprs); RelDataType retType = SqlValidatorUtil.deriveJoinRowType(inputRel.getRowType(), valuesRowType, JoinRelType.INNER, dtFactory, null, ImmutableList.of());
@Deprecated // to be removed before 2.0 public static RelDataType deriveJoinRowType( RelDataType leftType, RelDataType rightType, JoinRelType joinType, RelDataTypeFactory typeFactory, List<String> fieldNameList, List<RelDataTypeField> systemFieldList) { return SqlValidatorUtil.deriveJoinRowType(leftType, rightType, joinType, typeFactory, fieldNameList, systemFieldList); }
@Deprecated // to be removed before 2.0 public static RelDataType deriveJoinRowType( RelDataType leftType, RelDataType rightType, JoinRelType joinType, RelDataTypeFactory typeFactory, List<String> fieldNameList, List<RelDataTypeField> systemFieldList) { return SqlValidatorUtil.deriveJoinRowType(leftType, rightType, joinType, typeFactory, fieldNameList, systemFieldList); }
/** * {@inheritDoc} * * <p>In the case of semi-join, the row type consists of columns from left * input only. */ @Override public RelDataType deriveRowType() { return SqlValidatorUtil.deriveJoinRowType( left.getRowType(), null, JoinRelType.INNER, getCluster().getTypeFactory(), null, ImmutableList.of()); } }
/** * {@inheritDoc} * * <p>In the case of semi-join, the row type consists of columns from left * input only. */ @Override public RelDataType deriveRowType() { return SqlValidatorUtil.deriveJoinRowType( left.getRowType(), null, JoinRelType.INNER, getCluster().getTypeFactory(), null, ImmutableList.of()); } }
@Override public RelDataType deriveRowType() { if (isSemiJoin) { return SqlValidatorUtil.deriveJoinRowType( left.getRowType(), null, this.joinType, getCluster().getTypeFactory(), null, new ArrayList<>()); } else { return super.deriveRowType(); } } }
@Override protected RelDataType deriveRowType() { switch (joinType) { case LEFT: case INNER: return SqlValidatorUtil.deriveJoinRowType(left.getRowType(), right.getRowType(), joinType.toJoinType(), getCluster().getTypeFactory(), null, ImmutableList.of()); case ANTI: case SEMI: return left.getRowType(); default: throw new IllegalStateException("Unknown join type " + joinType); } }
@Override protected RelDataType deriveRowType() { switch (joinType) { case LEFT: case INNER: return SqlValidatorUtil.deriveJoinRowType(left.getRowType(), right.getRowType(), joinType.toJoinType(), getCluster().getTypeFactory(), null, ImmutableList.of()); case ANTI: case SEMI: return left.getRowType(); default: throw new IllegalStateException("Unknown join type " + joinType); } }
@Override protected RelDataType deriveRowType() { return SqlValidatorUtil.deriveJoinRowType(left.getRowType(), right.getRowType(), joinType, getCluster().getTypeFactory(), null, getSystemFieldList()); }
@Override protected RelDataType deriveRowType() { return SqlValidatorUtil.deriveJoinRowType(left.getRowType(), right.getRowType(), joinType, getCluster().getTypeFactory(), null, getSystemFieldList()); }
@Override public RelDataType deriveRowType() { return SqlValidatorUtil.deriveJoinRowType( left.getRowType(), isSemiJoin() ? null : right.getRowType(), JoinRelType.INNER, getCluster().getTypeFactory(), null, ImmutableList.of()); }
@Override protected RelDataType deriveRowType() { switch (joinType) { case LEFT: case INNER: return constructRowType(SqlValidatorUtil.deriveJoinRowType(left.getRowType(), removeImplicitField(right.getRowType()), joinType.toJoinType(), getCluster().getTypeFactory(), null, ImmutableList.of())); case ANTI: case SEMI: return constructRowType(left.getRowType()); default: throw new IllegalStateException("Unknown join type " + joinType); } }
SqlValidatorUtil.deriveJoinRowType( project.getInput().getRowType(), rightChild.getRowType(), SqlValidatorUtil.deriveJoinRowType( project.getRowType(), rightChild.getRowType(),
SqlValidatorUtil.deriveJoinRowType( project.getInput().getRowType(), rightChild.getRowType(), SqlValidatorUtil.deriveJoinRowType( project.getRowType(), rightChild.getRowType(),
SqlValidatorUtil.deriveJoinRowType( project.getInput().getRowType(), rightChild.getRowType(), SqlValidatorUtil.deriveJoinRowType( project.getRowType(), rightChild.getRowType(),
SqlValidatorUtil.deriveJoinRowType( leftJoinChild.getRowType(), rightJoinChild.getRowType(),
SqlValidatorUtil.deriveJoinRowType( leftJoinChild.getRowType(), rightJoinChild.getRowType(),