本文整理了Java中org.apache.calcite.plan.RelOptUtil.deduplicateColumns
方法的一些代码示例,展示了RelOptUtil.deduplicateColumns
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RelOptUtil.deduplicateColumns
方法的具体详情如下:
包路径:org.apache.calcite.plan.RelOptUtil
类名称:RelOptUtil
方法名:deduplicateColumns
[英]Returns the set of columns with unique names, with prior columns taking precedence over columns that appear later in the list.
[中]返回具有唯一名称的列集,之前的列优先于列表中后面出现的列。
代码示例来源:origin: Qihoo360/Quicksql
public final RelOptTable extend(List<RelDataTypeField> extendedFields) {
final Table table = unwrap(Table.class);
// Get the set of extended columns that do not have the same name as a column
// in the base table.
final List<RelDataTypeField> baseColumns = getRowType().getFieldList();
final List<RelDataTypeField> dedupedFields =
RelOptUtil.deduplicateColumns(baseColumns, extendedFields);
final List<RelDataTypeField> dedupedExtendedFields =
dedupedFields.subList(baseColumns.size(), dedupedFields.size());
if (table instanceof ExtensibleTable) {
final Table extendedTable =
((ExtensibleTable) table).extend(dedupedExtendedFields);
return extend(extendedTable);
} else if (table instanceof ModifiableViewTable) {
final ModifiableViewTable modifiableViewTable =
(ModifiableViewTable) table;
final ModifiableViewTable extendedView =
modifiableViewTable.extend(dedupedExtendedFields,
getRelOptSchema().getTypeFactory());
return extend(extendedView);
}
throw new RuntimeException("Cannot extend " + table);
}
代码示例来源:origin: org.apache.calcite/calcite-core
public final RelOptTable extend(List<RelDataTypeField> extendedFields) {
final Table table = unwrap(Table.class);
// Get the set of extended columns that do not have the same name as a column
// in the base table.
final List<RelDataTypeField> baseColumns = getRowType().getFieldList();
final List<RelDataTypeField> dedupedFields =
RelOptUtil.deduplicateColumns(baseColumns, extendedFields);
final List<RelDataTypeField> dedupedExtendedFields =
dedupedFields.subList(baseColumns.size(), dedupedFields.size());
if (table instanceof ExtensibleTable) {
final Table extendedTable =
((ExtensibleTable) table).extend(dedupedExtendedFields);
return extend(extendedTable);
} else if (table instanceof ModifiableViewTable) {
final ModifiableViewTable modifiableViewTable =
(ModifiableViewTable) table;
final ModifiableViewTable extendedView =
modifiableViewTable.extend(dedupedExtendedFields,
getRelOptSchema().getTypeFactory());
return extend(extendedView);
}
throw new RuntimeException("Cannot extend " + table);
}
代码示例来源:origin: Qihoo360/Quicksql
underlying.getRowType(typeFactory).getFieldList();
final List<RelDataTypeField> columnsOfExtendedBaseTable =
RelOptUtil.deduplicateColumns(underlyingColumns, extendedColumns);
final List<RelDataTypeField> extendColumnsOfBaseTable =
columnsOfExtendedBaseTable.subList(
代码示例来源:origin: org.apache.calcite/calcite-core
underlying.getRowType(typeFactory).getFieldList();
final List<RelDataTypeField> columnsOfExtendedBaseTable =
RelOptUtil.deduplicateColumns(underlyingColumns, extendedColumns);
final List<RelDataTypeField> extendColumnsOfBaseTable =
columnsOfExtendedBaseTable.subList(
内容来源于网络,如有侵权,请联系作者删除!