org.apache.calcite.plan.RelOptUtil.deduplicateColumns()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(3.1k)|赞(0)|评价(0)|浏览(55)

本文整理了Java中org.apache.calcite.plan.RelOptUtil.deduplicateColumns方法的一些代码示例,展示了RelOptUtil.deduplicateColumns的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RelOptUtil.deduplicateColumns方法的具体详情如下:
包路径:org.apache.calcite.plan.RelOptUtil
类名称:RelOptUtil
方法名:deduplicateColumns

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(

相关文章

微信公众号

最新文章

更多

RelOptUtil类方法