本文整理了Java中org.apache.calcite.rex.RexBuilder.getTypeFactory
方法的一些代码示例,展示了RexBuilder.getTypeFactory
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RexBuilder.getTypeFactory
方法的具体详情如下:
包路径:org.apache.calcite.rex.RexBuilder
类名称:RexBuilder
方法名:getTypeFactory
[英]Returns this RexBuilder's type factory
[中]返回此RexBuilder的类型工厂
代码示例来源:origin: apache/hive
RemoveCorrelationRexShuttle(
RexBuilder rexBuilder,
boolean projectPulledAboveLeftCorrelator,
RexInputRef nullIndicator,
Set<Integer> isCount) {
this.projectPulledAboveLeftCorrelator =
projectPulledAboveLeftCorrelator;
this.nullIndicator = nullIndicator; // may be null
this.isCount = ImmutableSet.copyOf(isCount);
this.rexBuilder = rexBuilder;
this.typeFactory = rexBuilder.getTypeFactory();
}
代码示例来源:origin: apache/drill
public RemoveCorrelationRexShuttle(
RexBuilder rexBuilder,
boolean projectPulledAboveLeftCorrelator,
RexInputRef nullIndicator,
Set<Integer> isCount) {
this.projectPulledAboveLeftCorrelator =
projectPulledAboveLeftCorrelator;
this.nullIndicator = nullIndicator; // may be null
this.isCount = ImmutableSet.copyOf(isCount);
this.rexBuilder = rexBuilder;
this.typeFactory = rexBuilder.getTypeFactory();
}
代码示例来源:origin: apache/storm
public StreamsPlanCreator(Map<String, ISqlStreamsDataSource> sources, RexBuilder rexBuilder) {
this.sources = sources;
this.rexCompiler = new RexNodeToJavaCodeCompiler(rexBuilder);
this.typeFactory = (JavaTypeFactory) rexBuilder.getTypeFactory();
this.streamBuilder = new StreamBuilder();
this.dataContext = new StormDataContext();
}
代码示例来源:origin: apache/hive
/*********************** Convert Hive Types To Calcite Types ***********************/
public static RelDataType getType(RelOptCluster cluster,
List<ColumnInfo> cInfoLst) throws CalciteSemanticException {
RexBuilder rexBuilder = cluster.getRexBuilder();
RelDataTypeFactory dtFactory = rexBuilder.getTypeFactory();
List<RelDataType> fieldTypes = new LinkedList<RelDataType>();
List<String> fieldNames = new LinkedList<String>();
for (ColumnInfo ci : cInfoLst) {
fieldTypes.add(convert(ci.getType(), dtFactory));
fieldNames.add(ci.getInternalName());
}
return dtFactory.createStructType(fieldTypes, fieldNames);
}
代码示例来源:origin: apache/drill
/*********************** Convert Hive Types To Calcite Types ***********************/
public static RelDataType getType(RelOptCluster cluster,
List<ColumnInfo> cInfoLst) throws CalciteSemanticException {
RexBuilder rexBuilder = cluster.getRexBuilder();
RelDataTypeFactory dtFactory = rexBuilder.getTypeFactory();
List<RelDataType> fieldTypes = new LinkedList<RelDataType>();
List<String> fieldNames = new LinkedList<String>();
for (ColumnInfo ci : cInfoLst) {
fieldTypes.add(convert(ci.getType(), dtFactory));
fieldNames.add(ci.getInternalName());
}
return dtFactory.createStructType(fieldTypes, fieldNames);
}
代码示例来源:origin: apache/hive
public static RelDataType getType(RelOptCluster cluster, RowResolver rr,
List<String> neededCols) throws CalciteSemanticException {
RexBuilder rexBuilder = cluster.getRexBuilder();
RelDataTypeFactory dtFactory = rexBuilder.getTypeFactory();
RowSchema rs = rr.getRowSchema();
List<RelDataType> fieldTypes = new LinkedList<RelDataType>();
List<String> fieldNames = new LinkedList<String>();
for (ColumnInfo ci : rs.getSignature()) {
if (neededCols == null || neededCols.contains(ci.getInternalName())) {
fieldTypes.add(convert(ci.getType(), dtFactory));
fieldNames.add(ci.getInternalName());
}
}
return dtFactory.createStructType(fieldTypes, fieldNames);
}
代码示例来源:origin: apache/drill
public static RelDataType getType(RelOptCluster cluster, RowResolver rr,
List<String> neededCols) throws CalciteSemanticException {
RexBuilder rexBuilder = cluster.getRexBuilder();
RelDataTypeFactory dtFactory = rexBuilder.getTypeFactory();
RowSchema rs = rr.getRowSchema();
List<RelDataType> fieldTypes = new LinkedList<RelDataType>();
List<String> fieldNames = new LinkedList<String>();
for (ColumnInfo ci : rs.getSignature()) {
if (neededCols == null || neededCols.contains(ci.getInternalName())) {
fieldTypes.add(convert(ci.getType(), dtFactory));
fieldNames.add(ci.getInternalName());
}
}
return dtFactory.createStructType(fieldTypes, fieldNames);
}
代码示例来源:origin: apache/hive
RelDataTypeFactory dtFactory = rexBuilder.getTypeFactory();
代码示例来源:origin: apache/hive
RelDataTypeFactory dtFactory = cluster.getRexBuilder().getTypeFactory();
for (RelDataTypeField field : rowType.getFieldList()) {
if (DruidTable.DEFAULT_TIMESTAMP_COLUMN.equals(field.getName())) {
代码示例来源:origin: apache/hive
RelDataTypeFactory dtFactory = rexBuilder.getTypeFactory();
RowSchema rs = selectRR.getRowSchema();
for (ColumnInfo ci : rs.getSignature()) {
代码示例来源:origin: apache/storm
final BlockBuilder builder = new BlockBuilder();
final JavaTypeFactoryImpl javaTypeFactory =
new JavaTypeFactoryImpl(rexBuilder.getTypeFactory().getTypeSystem());
代码示例来源:origin: apache/drill
RelDataTypeFactory dtFactory = rexBuilder.getTypeFactory();
RowSchema rs = selectRR.getRowSchema();
for (ColumnInfo ci : rs.getSignature()) {
代码示例来源:origin: apache/drill
protected RexNode convert(ExprNodeConstantDesc literal) throws CalciteSemanticException {
RexBuilder rexBuilder = cluster.getRexBuilder();
RelDataTypeFactory dtFactory = rexBuilder.getTypeFactory();
PrimitiveTypeInfo hiveType = (PrimitiveTypeInfo) literal.getTypeInfo();
RelDataType calciteDataType = TypeConverter.convert(hiveType, dtFactory);
代码示例来源:origin: apache/hive
protected RexNode convert(ExprNodeConstantDesc literal) throws CalciteSemanticException {
final RexBuilder rexBuilder = cluster.getRexBuilder();
final RelDataTypeFactory dtFactory = rexBuilder.getTypeFactory();
final PrimitiveTypeInfo hiveType = (PrimitiveTypeInfo) literal.getTypeInfo();
final RelDataType calciteDataType = TypeConverter.convert(hiveType, dtFactory);
rexBuilder.getTypeFactory().createSqlType(
SqlTypeName.TIMESTAMP,
rexBuilder.getTypeFactory().getTypeSystem().getDefaultPrecision(SqlTypeName.TIMESTAMP)),
false);
break;
rexBuilder.getTypeFactory().getTypeSystem().getDefaultPrecision(SqlTypeName.TIMESTAMP_WITH_LOCAL_TIME_ZONE));
break;
case INTERVAL_YEAR_MONTH:
代码示例来源:origin: apache/hive
+ rightKey + " (type " + rightKeyType + ")");
RelDataType targetKeyType = TypeConverter.convert(tgtType, rexBuilder.getTypeFactory());
代码示例来源:origin: apache/hive
Set<String> metrics = new HashSet<>();
RexBuilder rexBuilder = cluster.getRexBuilder();
RelDataTypeFactory dtFactory = rexBuilder.getTypeFactory();
List<RelDataType> druidColTypes = new ArrayList<>();
List<String> druidColNames = new ArrayList<>();
代码示例来源:origin: apache/drill
/**
* Create a cast for partition column. Partition column is output as "VARCHAR" in native parquet reader. Cast it
* appropriate type according the partition type in HiveScan.
*/
private RexNode createPartitionColumnCast(final DrillScanRel hiveScanRel, final DrillScanRel nativeScanRel,
final String outputColName, final String dirColName, final RexBuilder rb) {
final RelDataType outputType = hiveScanRel.getRowType().getField(outputColName, false, false).getType();
final RelDataTypeField inputField = nativeScanRel.getRowType().getField(dirColName, false, false);
final RexInputRef inputRef =
rb.makeInputRef(rb.getTypeFactory().createSqlType(SqlTypeName.VARCHAR), inputField.getIndex());
if (outputType.getSqlTypeName() == SqlTypeName.CHAR) {
return rb.makeCall(RTRIM, inputRef);
}
return rb.makeCast(outputType, inputRef);
}
}
代码示例来源:origin: apache/hive
getFieldType(oldAggRel.getInput(), iAvgInput), true);
final RelDataType sumReturnType = getSumReturnType(
rexBuilder.getTypeFactory(), sum0InputType, oldCall.getType());
final AggregateCall sumCall =
AggregateCall.create(
代码示例来源:origin: apache/hive
final int argRefOrdinal = lookupOrAdd(inputExprs, argRef);
final RelDataType sumReturnType = getSumReturnType(
rexBuilder.getTypeFactory(), argRef.getType(), oldCall.getType());
final int argSquaredOrdinal = lookupOrAdd(inputExprs, argSquared);
final RelDataType sumSquaredReturnType = getSumReturnType(
rexBuilder.getTypeFactory(), argSquared.getType(), oldCall.getType());
代码示例来源:origin: apache/hive
getFieldType(oldAggRel.getInput(), iAvgInput), true);
final RelDataType sumReturnType = getSumReturnType(
rexBuilder.getTypeFactory(), avgInputType, oldCall.getType());
final AggregateCall sumCall =
AggregateCall.create(
内容来源于网络,如有侵权,请联系作者删除!