本文整理了Java中com.facebook.presto.sql.tree.Window.getOrderBy()
方法的一些代码示例,展示了Window.getOrderBy()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Window.getOrderBy()
方法的具体详情如下:
包路径:com.facebook.presto.sql.tree.Window
类名称:Window
方法名:getOrderBy
暂无
代码示例来源:origin: prestodb/presto
@Override
public String visitWindow(Window node, Void context)
{
List<String> parts = new ArrayList<>();
if (!node.getPartitionBy().isEmpty()) {
parts.add("PARTITION BY " + joinExpressions(node.getPartitionBy()));
}
if (node.getOrderBy().isPresent()) {
parts.add(formatOrderBy(node.getOrderBy().get(), parameters));
}
if (node.getFrame().isPresent()) {
parts.add(process(node.getFrame().get(), context));
}
return '(' + Joiner.on(' ').join(parts) + ')';
}
代码示例来源:origin: prestodb/presto
@Override
public R visitWindow(Window node, C context)
{
for (Expression expression : node.getPartitionBy()) {
process(expression, context);
}
if (node.getOrderBy().isPresent()) {
process(node.getOrderBy().get(), context);
}
if (node.getFrame().isPresent()) {
process(node.getFrame().get(), context);
}
return null;
}
代码示例来源:origin: prestodb/presto
.addAll(windowFunction.getArguments())
.addAll(window.getPartitionBy())
.addAll(Iterables.transform(getSortItemsFromOrderBy(window.getOrderBy()), SortItem::getSortKey));
for (SortItem item : getSortItemsFromOrderBy(window.getOrderBy())) {
Symbol symbol = subPlan.translate(item.getSortKey());
代码示例来源:origin: prestodb/presto
toExtract.addAll(windowFunction.getArguments());
toExtract.addAll(window.getPartitionBy());
window.getOrderBy().ifPresent(orderBy -> toExtract.addAll(orderBy.getSortItems()));
window.getFrame().ifPresent(toExtract::add);
代码示例来源:origin: prestodb/presto
@Override
public Boolean visitWindow(Window node, Void context)
{
for (Expression expression : node.getPartitionBy()) {
if (!process(expression, context)) {
throw new SemanticException(MUST_BE_AGGREGATE_OR_GROUP_BY,
expression,
"PARTITION BY expression '%s' must be an aggregate expression or appear in GROUP BY clause",
expression);
}
}
for (SortItem sortItem : getSortItemsFromOrderBy(node.getOrderBy())) {
Expression expression = sortItem.getSortKey();
if (!process(expression, context)) {
throw new SemanticException(MUST_BE_AGGREGATE_OR_GROUP_BY,
expression,
"ORDER BY expression '%s' must be an aggregate expression or appear in GROUP BY clause",
expression);
}
}
if (node.getFrame().isPresent()) {
process(node.getFrame().get(), context);
}
return true;
}
代码示例来源:origin: prestodb/presto
for (SortItem sortItem : getSortItemsFromOrderBy(node.getWindow().get().getOrderBy())) {
process(sortItem.getSortKey(), context);
Type type = getExpressionType(sortItem.getSortKey());
代码示例来源:origin: rakam-io/rakam
@Override
public String visitWindow(Window node, Void context) {
List<String> parts = new ArrayList<>();
if (!node.getPartitionBy().isEmpty()) {
parts.add("PARTITION BY " + joinExpressions(node.getPartitionBy()));
}
if (node.getOrderBy().isPresent()) {
parts.add(formatOrderBy(node.getOrderBy().get(), tableNameMapper, columnNameMapper, queryWithTables, escape));
}
if (node.getFrame().isPresent()) {
parts.add(process(node.getFrame().get(), context));
}
return '(' + Joiner.on(' ').join(parts) + ')';
}
代码示例来源:origin: com.facebook.presto/presto-parser
@Override
public String visitWindow(Window node, Void context)
{
List<String> parts = new ArrayList<>();
if (!node.getPartitionBy().isEmpty()) {
parts.add("PARTITION BY " + joinExpressions(node.getPartitionBy()));
}
if (node.getOrderBy().isPresent()) {
parts.add(formatOrderBy(node.getOrderBy().get(), parameters));
}
if (node.getFrame().isPresent()) {
parts.add(process(node.getFrame().get(), context));
}
return '(' + Joiner.on(' ').join(parts) + ')';
}
代码示例来源:origin: uk.co.nichesolutions.presto/presto-parser
@Override
public String visitWindow(Window node, Boolean unmangleNames)
{
List<String> parts = new ArrayList<>();
if (!node.getPartitionBy().isEmpty()) {
parts.add("PARTITION BY " + joinExpressions(node.getPartitionBy(), unmangleNames));
}
if (!node.getOrderBy().isEmpty()) {
parts.add("ORDER BY " + formatSortItems(node.getOrderBy(), unmangleNames));
}
if (node.getFrame().isPresent()) {
parts.add(process(node.getFrame().get(), unmangleNames));
}
return '(' + Joiner.on(' ').join(parts) + ')';
}
代码示例来源:origin: vqtran/EchoQuery
@Override
public String visitWindow(Window node, Boolean unmangleNames)
{
List<String> parts = new ArrayList<>();
if (!node.getPartitionBy().isEmpty()) {
parts.add("PARTITION BY " + joinExpressions(node.getPartitionBy(), unmangleNames));
}
if (!node.getOrderBy().isEmpty()) {
parts.add("ORDER BY " + formatSortItems(node.getOrderBy(), unmangleNames));
}
if (node.getFrame().isPresent()) {
parts.add(process(node.getFrame().get(), unmangleNames));
}
return '(' + Joiner.on(' ').join(parts) + ')';
}
代码示例来源:origin: com.facebook.presto/presto-parser
@Override
public R visitWindow(Window node, C context)
{
for (Expression expression : node.getPartitionBy()) {
process(expression, context);
}
if (node.getOrderBy().isPresent()) {
process(node.getOrderBy().get(), context);
}
if (node.getFrame().isPresent()) {
process(node.getFrame().get(), context);
}
return null;
}
代码示例来源:origin: uk.co.nichesolutions.presto/presto-parser
@Override
public R visitWindow(Window node, C context)
{
for (Expression expression : node.getPartitionBy()) {
process(expression, context);
}
for (SortItem sortItem : node.getOrderBy()) {
process(sortItem.getSortKey(), context);
}
if (node.getFrame().isPresent()) {
process(node.getFrame().get(), context);
}
return null;
}
代码示例来源:origin: uk.co.nichesolutions.presto/presto-main
.addAll(windowFunction.getArguments())
.addAll(window.getPartitionBy())
.addAll(Iterables.transform(window.getOrderBy(), SortItem::getSortKey));
for (SortItem item : window.getOrderBy()) {
Symbol symbol = subPlan.translate(item.getSortKey());
orderings.put(symbol, toSortOrder(item));
代码示例来源:origin: uk.co.nichesolutions.presto/presto-main
@Override
public Boolean visitWindow(Window node, Void context)
{
for (Expression expression : node.getPartitionBy()) {
if (!process(expression, context)) {
throw new SemanticException(MUST_BE_AGGREGATE_OR_GROUP_BY,
expression,
"PARTITION BY expression '%s' must be an aggregate expression or appear in GROUP BY clause",
expression);
}
}
for (SortItem sortItem : node.getOrderBy()) {
Expression expression = sortItem.getSortKey();
if (!process(expression, context)) {
throw new SemanticException(MUST_BE_AGGREGATE_OR_GROUP_BY,
expression,
"ORDER BY expression '%s' must be an aggregate expression or appear in GROUP BY clause",
expression);
}
}
if (node.getFrame().isPresent()) {
process(node.getFrame().get(), context);
}
return true;
}
代码示例来源:origin: uk.co.nichesolutions.presto/presto-main
for (SortItem sortItem : node.getWindow().get().getOrderBy()) {
process(sortItem.getSortKey(), context);
Type type = expressionTypes.get(sortItem.getSortKey());
代码示例来源:origin: uk.co.nichesolutions.presto/presto-main
for (SortItem sortItem : window.getOrderBy()) {
nestedExtractor.process(sortItem.getSortKey(), null);
内容来源于网络,如有侵权,请联系作者删除!