本文整理了Java中org.apache.calcite.rel.type.RelDataTypeFactory.builder
方法的一些代码示例,展示了RelDataTypeFactory.builder
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RelDataTypeFactory.builder
方法的具体详情如下:
包路径:org.apache.calcite.rel.type.RelDataTypeFactory
类名称:RelDataTypeFactory
方法名:builder
[英]Creates a org.apache.calcite.rel.type.RelDataTypeFactory.FieldInfoBuilder. But since FieldInfoBuilder is deprecated, we recommend that you use its base class Builder, which is not deprecated.
[中]创建一个组织。阿帕奇。方解石雷尔。类型雷尔数据类型工厂。FieldInfoBuilder。但由于FieldInfoBuilder已被弃用,我们建议您使用它的基类生成器,而基类生成器未被弃用。
代码示例来源:origin: apache/storm
@Override
public RelDataType getRowType(
RelDataTypeFactory relDataTypeFactory) {
RelDataTypeFactory.FieldInfoBuilder b = relDataTypeFactory.builder();
for (FieldType f : fields) {
b.add(f.name, f.relDataType);
}
return b.build();
}
代码示例来源:origin: apache/nifi
@Override
public RelDataType deriveRowType() {
final List<RelDataTypeField> fieldList = table.getRowType().getFieldList();
final RelDataTypeFactory.FieldInfoBuilder builder = getCluster().getTypeFactory().builder();
for (int field : fields) {
builder.add(fieldList.get(field));
}
return builder.build();
}
代码示例来源:origin: apache/hive
final List<Integer> groupList = groupSet.asList();
assert groupList.size() == groupSet.cardinality();
final RelDataTypeFactory.FieldInfoBuilder builder = typeFactory.builder();
final List<RelDataTypeField> fieldList = inputRowType.getFieldList();
final Set<String> containedNames = Sets.newHashSet();
代码示例来源:origin: apache/kylin
@Override
public void implementRewrite(RewriteImplementor implementor) {
Map<String, RelDataType> rewriteFields = this.context.rewriteFields;
for (Map.Entry<String, RelDataType> rewriteField : rewriteFields.entrySet()) {
String fieldName = rewriteField.getKey();
RelDataTypeField field = rowType.getField(fieldName, true, false);
if (field != null) {
RelDataType fieldType = field.getType();
rewriteField.setValue(fieldType);
}
}
// add dynamic field to the table scan if join not exist
if (!this.context.hasJoin && !this.context.dynamicFields.isEmpty()) {
Map<TblColRef, RelDataType> dynFields = this.context.dynamicFields;
List<TblColRef> newCols = Lists.newArrayList(this.columnRowType.getAllColumns());
List<RelDataTypeField> newFieldList = Lists.newArrayList(this.rowType.getFieldList());
int paramIndex = this.rowType.getFieldList().size();
for (TblColRef fieldCol : dynFields.keySet()) {
newCols.add(fieldCol);
RelDataType fieldType = dynFields.get(fieldCol);
RelDataTypeField newField = new RelDataTypeFieldImpl(fieldCol.getName(), paramIndex++, fieldType);
newFieldList.add(newField);
}
// rebuild row type
RelDataTypeFactory.FieldInfoBuilder fieldInfo = getCluster().getTypeFactory().builder();
fieldInfo.addAll(newFieldList);
this.rowType = getCluster().getTypeFactory().createStructType(fieldInfo);
this.columnRowType = new ColumnRowType(newCols);
}
}
代码示例来源:origin: apache/kylin
@Override
public RelDataType deriveRowType() {
final List<RelDataTypeField> fieldList = table.getRowType().getFieldList();
final RelDataTypeFactory.FieldInfoBuilder builder = getCluster().getTypeFactory().builder();
for (int field : fields) {
builder.add(fieldList.get(field));
}
return getCluster().getTypeFactory().createStructType(builder);
}
代码示例来源:origin: apache/drill
final List<Integer> groupList = groupSet.asList();
assert groupList.size() == groupSet.cardinality();
final RelDataTypeFactory.FieldInfoBuilder builder = typeFactory.builder();
final List<RelDataTypeField> fieldList = inputRowType.getFieldList();
final Set<String> containedNames = Sets.newHashSet();
代码示例来源:origin: apache/flink
final List<ImmutableIntList> sources = new ArrayList<>();
final Set<ImmutableIntList> sourceSet = new HashSet<>();
final RelDataTypeFactory.Builder b = typeFactory.builder();
if (names != null) {
for (String name : names) {
代码示例来源:origin: apache/kylin
@SuppressWarnings("deprecation")
private RelDataType deriveRowType(RelDataTypeFactory typeFactory) {
RelDataTypeFactory.FieldInfoBuilder fieldInfo = typeFactory.builder();
for (ColumnDesc column : sourceColumns) {
RelDataType sqlType = createSqlType(typeFactory, column.getUpgradedType(), column.isNullable());
sqlType = SqlTypeUtil.addCharsetAndCollation(sqlType, typeFactory);
fieldInfo.add(column.getName(), sqlType);
}
return typeFactory.createStructType(fieldInfo);
}
代码示例来源:origin: apache/kylin
FieldInfoBuilder fieldInfo = getCluster().getTypeFactory().builder();
fieldInfo.addAll(this.rowType.getFieldList());
fieldInfo.addAll(newFieldList);
RelDataTypeFactory.FieldInfoBuilder fieldInfo = getCluster().getTypeFactory().builder();
fieldInfo.addAll(this.rowType.getFieldList());
fieldInfo.addAll(newFieldList);
代码示例来源:origin: apache/kylin
FieldInfoBuilder fieldInfo = getCluster().getTypeFactory().builder();
fieldInfo.addAll(newFields);
fieldInfo.addAll(newFieldList);
代码示例来源:origin: apache/hive
tupleList(fieldNames.length, values);
final RelDataTypeFactory.FieldInfoBuilder rowTypeBuilder =
cluster.getTypeFactory().builder();
for (final Ord<String> fieldName : Ord.zip(fieldNames)) {
final String name =
代码示例来源:origin: apache/incubator-druid
final RelDataTypeFactory.Builder builder = typeFactory.builder();
for (final String columnName : columnNames) {
final ValueType columnType = getColumnType(columnName);
代码示例来源:origin: apache/drill
tupleList(fieldNames.length, values);
final RelDataTypeFactory.FieldInfoBuilder rowTypeBuilder =
cluster.getTypeFactory().builder();
for (final Ord<String> fieldName : Ord.zip(fieldNames)) {
final String name =
代码示例来源:origin: apache/drill
public void onMatch(RelOptRuleCall call) {
final Filter filter = call.rel(0);
final Project project = call.rel(1);
final List<RexNode> newProjects = new ArrayList<>(project.getProjects());
newProjects.add(filter.getCondition());
final RelOptCluster cluster = filter.getCluster();
RelDataType newRowType =
cluster.getTypeFactory().builder()
.addAll(project.getRowType().getFieldList())
.add("condition", Util.last(newProjects).getType())
.build();
final RelNode newProject =
project.copy(project.getTraitSet(),
project.getInput(),
newProjects,
newRowType);
final RexInputRef newCondition =
cluster.getRexBuilder().makeInputRef(newProject,
newProjects.size() - 1);
call.transformTo(filter.copy(filter.getTraitSet(), newProject, newCondition));
}
}
代码示例来源:origin: apache/flink
== SqlMatchRecognize.RowsPerMatchOption.ALL_ROWS;
final RelDataTypeFactory.Builder typeBuilder = typeFactory.builder();
代码示例来源:origin: Qihoo360/Quicksql
private static RelDataType makeStruct(
RelDataTypeFactory typeFactory,
RelDataType type) {
if (type.isStruct()) {
return type;
}
return typeFactory.builder().add("$0", type).build();
}
代码示例来源:origin: Qihoo360/Quicksql
@Override public RelDataType deriveRowType() {
final List<RelDataTypeField> fieldList = table.getRowType().getFieldList();
final RelDataTypeFactory.Builder builder =
getCluster().getTypeFactory().builder();
for (int field : fields) {
builder.add(fieldList.get(field));
}
return builder.build();
}
代码示例来源:origin: Qihoo360/Quicksql
public static TranslatableTable str(Object o, Object p) {
assertThat(RexLiteral.validConstant(o, Litmus.THROW), is(true));
assertThat(RexLiteral.validConstant(p, Litmus.THROW), is(true));
return new ViewTable(Object.class, typeFactory ->
typeFactory.builder().add("c", SqlTypeName.VARCHAR, 100).build(),
"values " + CalciteSqlDialect.DEFAULT.quoteStringLiteral(o.toString())
+ ", " + CalciteSqlDialect.DEFAULT.quoteStringLiteral(p.toString()),
ImmutableList.of(), Arrays.asList("view"));
}
代码示例来源:origin: Qihoo360/Quicksql
public RelDataType getRowType(RelDataTypeFactory typeFactory) {
return typeFactory.builder()
.add("ID", SqlTypeName.INTEGER)
.add("MAPFIELD", SqlTypeName.ANY)
.add("NESTEDMAPFIELD", SqlTypeName.ANY)
.add("ARRAYFIELD", SqlTypeName.ANY)
.add("STRINGARRAYFIELD", SqlTypeName.ANY)
.build();
}
代码示例来源:origin: Qihoo360/Quicksql
public RelDataType getRowType(RelDataTypeFactory typeFactory) {
return typeFactory.builder()
.add("country", SqlTypeName.VARCHAR)
.add("latitude", SqlTypeName.DECIMAL).nullable(true)
.add("longitude", SqlTypeName.DECIMAL).nullable(true)
.add("name", SqlTypeName.VARCHAR)
.build();
}
内容来源于网络,如有侵权,请联系作者删除!