本文整理汇总了Java中org.apache.calcite.rel.core.Sort.getCollation方法的典型用法代码示例。如果您正苦于以下问题:Java Sort.getCollation方法的具体用法?Java Sort.getCollation怎么用?Java Sort.getCollation使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.calcite.rel.core.Sort
的用法示例。
在下文中一共展示了Sort.getCollation方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: rewriteRel
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
public void rewriteRel(Sort rel) {
RelCollation oldCollation = rel.getCollation();
final RelNode oldChild = rel.getInput();
final RelNode newChild = getNewForOldRel(oldChild);
final Mappings.TargetMapping mapping =
getNewForOldInputMapping(oldChild);
// validate
for (RelFieldCollation field : oldCollation.getFieldCollations()) {
int oldInput = field.getFieldIndex();
RelDataType sortFieldType =
oldChild.getRowType().getFieldList().get(oldInput).getType();
if (sortFieldType.isStruct()) {
// TODO jvs 10-Feb-2005
throw Util.needToImplement("sorting on structured types");
}
}
RelCollation newCollation = RexUtil.apply(mapping, oldCollation);
Sort newRel =
LogicalSort.create(newChild, newCollation, rel.offset, rel.fetch);
setNewForOldRel(rel, newRel);
}
示例2: convert
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
@Override
public RelNode convert(RelNode r) {
Sort rel = (Sort) r;
return new SortPrel(rel.getCluster(),
rel.getInput().getTraitSet().replace(Prel.DRILL_PHYSICAL).plus(rel.getCollation()),
convert(rel.getInput(), rel.getInput().getTraitSet().replace(Prel.DRILL_PHYSICAL)),
rel.getCollation());
}
示例3: convert
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
@Override
public RelNode convert(RelNode r) {
Sort rel = (Sort) r;
return new SortPrel(rel.getCluster(),
rel.getInput().getTraitSet().replace(Prel.PHYSICAL).plus(rel.getCollation()),
convert(rel.getInput(), rel.getInput().getTraitSet().replace(Prel.PHYSICAL).simplify()),
rel.getCollation());
}
示例4: convert
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
@Override public RelNode convert(RelNode rel) {
Sort sort = (Sort) rel;
final RelNode input = sort.getInput();
return new BeamSortRel(
sort.getCluster(),
sort.getTraitSet().replace(BeamLogicalConvention.INSTANCE),
convert(input, input.getTraitSet().replace(BeamLogicalConvention.INSTANCE)),
sort.getCollation(),
sort.offset,
sort.fetch
);
}
示例5: convert
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
public RelNode convert(RelNode rel) {
final Sort sort = (Sort) rel;
if (sort.offset != null || sort.fetch != null) {
// Cannot implement "OFFSET n FETCH n" currently.
return null;
}
final RelTraitSet traitSet = sort.getTraitSet().replace(getOut());
return new JdbcSort(rel.getCluster(), traitSet,
convert(sort.getInput(), traitSet), sort.getCollation());
}
示例6: convert
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
@Override
public RelNode convert(RelNode rel) {
final Sort sort = (Sort) rel;
if (sort.offset != null || sort.fetch != null) {
return null;
}
final RelTraitSet traitSet = sort.getTraitSet().replace(OLAPRel.CONVENTION);
final RelNode input = sort.getInput();
return new OLAPSortRel(rel.getCluster(), traitSet, convert(input, input.getTraitSet().replace(OLAPRel.CONVENTION)), sort.getCollation(), sort.offset, sort.fetch);
}
示例7: convert
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
public RelNode convert(Sort sort, CassandraFilter filter) {
final RelTraitSet traitSet =
sort.getTraitSet().replace(CassandraRel.CONVENTION)
.replace(sort.getCollation());
return new CassandraSort(sort.getCluster(), traitSet,
convert(sort.getInput(), traitSet.replace(RelCollations.EMPTY)),
sort.getCollation());
}
示例8: convert
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
public RelNode convert(RelNode rel) {
final Sort sort = (Sort) rel;
final RelTraitSet traitSet =
sort.getTraitSet().replace(out)
.replace(sort.getCollation());
return new MongoSort(rel.getCluster(), traitSet,
convert(sort.getInput(), traitSet.replace(RelCollations.EMPTY)),
sort.getCollation(), sort.offset, sort.fetch);
}
示例9: convert
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
public RelNode convert(RelNode rel) {
final Sort sort = (Sort) rel;
final RelTraitSet traitSet = sort.getTraitSet().replace(out);
return new JdbcSort(rel.getCluster(), traitSet,
convert(sort.getInput(), traitSet), sort.getCollation(), sort.offset,
sort.fetch);
}
示例10: convert
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
@Override public RelNode convert(RelNode relNode) {
final Sort sort = (Sort) relNode;
final RelTraitSet traitSet = sort.getTraitSet().replace(out).replace(sort.getCollation());
return new ElasticsearchSort(relNode.getCluster(), traitSet,
convert(sort.getInput(), traitSet.replace(RelCollations.EMPTY)), sort.getCollation(),
sort.offset, sort.fetch);
}
示例11: convert
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
public RelNode convert(RelNode rel) {
final Sort sort = (Sort) rel;
final RelTraitSet traitSet =
sort.getTraitSet().replace(BindableConvention.INSTANCE);
final RelNode input = sort.getInput();
return new BindableSort(rel.getCluster(), traitSet,
convert(input,
input.getTraitSet().replace(BindableConvention.INSTANCE)),
sort.getCollation(), sort.offset, sort.fetch);
}
示例12: convert
import org.apache.calcite.rel.core.Sort; //导入方法依赖的package包/类
public RelNode convert(RelNode rel) {
final Sort sort = (Sort) rel;
final RelNode input = convert(sort.getInput(),
rel.getCluster().traitSetOf(PHYSICAL));
return new PhysSort(
rel.getCluster(),
input.getTraitSet().plus(sort.getCollation()),
convert(input, input.getTraitSet().replace(PHYSICAL)),
sort.getCollation(),
null,
null);
}