com.facebook.presto.sql.tree.QuerySpecification.getWhere()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(7.2k)|赞(0)|评价(0)|浏览(72)

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

QuerySpecification.getWhere介绍

暂无

代码示例

代码示例来源:origin: prestodb/presto

if (node.getWhere().isPresent()) {
  append(indent, "WHERE " + formatExpression(node.getWhere().get(), parameters))
      .append('\n');

代码示例来源:origin: prestodb/presto

@Override
protected R visitQuerySpecification(QuerySpecification node, C context)
{
  process(node.getSelect(), context);
  if (node.getFrom().isPresent()) {
    process(node.getFrom().get(), context);
  }
  if (node.getWhere().isPresent()) {
    process(node.getWhere().get(), context);
  }
  if (node.getGroupBy().isPresent()) {
    process(node.getGroupBy().get(), context);
  }
  if (node.getHaving().isPresent()) {
    process(node.getHaving().get(), context);
  }
  if (node.getOrderBy().isPresent()) {
    process(node.getOrderBy().get(), context);
  }
  return null;
}

代码示例来源:origin: prestodb/presto

querySpecification.getSelect(),
querySpecification.getFrom(),
querySpecification.getWhere(),
querySpecification.getGroupBy(),
querySpecification.getHaving(),

代码示例来源:origin: prestodb/presto

node.getWhere().ifPresent(where -> analyzeWhere(node, sourceScope, where));

代码示例来源:origin: prestodb/presto

if (node.getWhere().isPresent()) {
  print(indentLevel, "Where");
  process(node.getWhere().get(), indentLevel + 1);

代码示例来源:origin: prestodb/presto

query.getSelect(),
query.getFrom(),
query.getWhere(),
query.getGroupBy(),
query.getHaving(),

代码示例来源:origin: rakam-io/rakam

@Override
protected Void visitQuerySpecification(QuerySpecification node, Integer indent) {
  process(node.getSelect(), indent);
  if (node.getFrom().isPresent()) {
    append(indent, "FROM");
    builder.append('\n');
    append(indent, "  ");
    process(node.getFrom().get(), indent);
  }
  builder.append('\n');
  if (node.getWhere().isPresent()) {
    append(indent, "WHERE " + formatExpression(node.getWhere().get(), tableNameMapper, columnNameMapper, queryWithTables, escapeIdentifier))
        .append('\n');
  }
  if (node.getGroupBy().isPresent()) {
    append(indent, "GROUP BY " + (node.getGroupBy().get().isDistinct() ? " DISTINCT " : "") + formatGroupBy(node.getGroupBy().get().getGroupingElements())).append('\n');
  }
  if (node.getHaving().isPresent()) {
    append(indent, "HAVING " + formatExpression(node.getHaving().get(), tableNameMapper, columnNameMapper, queryWithTables, escapeIdentifier))
        .append('\n');
  }
  if (node.getOrderBy().isPresent()) {
    process(node.getOrderBy().get(), indent);
  }
  if (node.getLimit().isPresent()) {
    append(indent, "LIMIT " + node.getLimit().get())
        .append('\n');
  }
  return null;
}

代码示例来源:origin: rakam-io/rakam

node.getWhere().ifPresent(where -> {
  new AstVisitor<Void, Integer>() {
    @Override

代码示例来源:origin: stackoverflow.com

public class PrestoParserTest {
  public static void main(String[] args) {
    SqlParser parser = new SqlParser();
    String sql = "select * from xyz where x=y group by x order by y limit 10";
    Query query = (Query)parser.createStatement(sql);
    QuerySpecification body = (QuerySpecification)query.getQueryBody();
    Select select = body.getSelect();
    System.out.println("Columns = " + select.getSelectItems());
    System.out.println("From = " + body.getFrom().get());
    Optional<Expression> where = body.getWhere();
    System.out.println("Where = " + where.get());
    System.out.println("Group by = " + body.getGroupBy());
    System.out.println("Order by = " + body.getOrderBy());
    System.out.println("Limit = " + body.getLimit().get());

  }
}

代码示例来源:origin: com.facebook.presto/presto-parser

@Override
protected R visitQuerySpecification(QuerySpecification node, C context)
{
  process(node.getSelect(), context);
  if (node.getFrom().isPresent()) {
    process(node.getFrom().get(), context);
  }
  if (node.getWhere().isPresent()) {
    process(node.getWhere().get(), context);
  }
  if (node.getGroupBy().isPresent()) {
    process(node.getGroupBy().get(), context);
  }
  if (node.getHaving().isPresent()) {
    process(node.getHaving().get(), context);
  }
  if (node.getOrderBy().isPresent()) {
    process(node.getOrderBy().get(), context);
  }
  return null;
}

代码示例来源:origin: vqtran/EchoQuery

if (node.getWhere().isPresent()) {
  append(indent, "WHERE " + formatExpression(node.getWhere().get()))
      .append('\n');

代码示例来源:origin: uk.co.nichesolutions.presto/presto-parser

if (node.getWhere().isPresent()) {
  append(indent, "WHERE " + formatExpression(node.getWhere().get()))
      .append('\n');

代码示例来源:origin: com.facebook.presto/presto-parser

if (node.getWhere().isPresent()) {
  append(indent, "WHERE " + formatExpression(node.getWhere().get(), parameters))
      .append('\n');

代码示例来源:origin: uk.co.nichesolutions.presto/presto-parser

@Override
protected R visitQuerySpecification(QuerySpecification node, C context)
{
  process(node.getSelect(), context);
  if (node.getFrom().isPresent()) {
    process(node.getFrom().get(), context);
  }
  if (node.getWhere().isPresent()) {
    process(node.getWhere().get(), context);
  }
  if (node.getGroupBy().isPresent()) {
    for (GroupingElement groupingElement : node.getGroupBy().get().getGroupingElements()) {
      process(groupingElement, context);
    }
  }
  if (node.getHaving().isPresent()) {
    process(node.getHaving().get(), context);
  }
  for (SortItem sortItem : node.getOrderBy()) {
    process(sortItem, context);
  }
  return null;
}

代码示例来源:origin: vqtran/EchoQuery

if (node.getWhere().isPresent()) {
  translation.append(" where ");
  process(node.getWhere().get(), true);

代码示例来源:origin: Anchormen/sql4es

if(querySpec.getWhere().isPresent()){
  QueryBuilder query = new WhereParser().process(querySpec.getWhere().get(), state).getQuery();
  response = client.admin().indices().prepareAliases().addAlias(indices, alias, query).execute().actionGet();
}else{

代码示例来源:origin: com.facebook.presto/presto-parser

if (node.getWhere().isPresent()) {
  print(indentLevel, "Where");
  process(node.getWhere().get(), indentLevel + 1);

代码示例来源:origin: com.facebook.presto/presto-parser

query.getSelect(),
query.getFrom(),
query.getWhere(),
query.getGroupBy(),
query.getHaving(),

代码示例来源:origin: uk.co.nichesolutions.presto/presto-main

@Override
protected RelationType visitQuerySpecification(QuerySpecification node, AnalysisContext parentContext)
{
  // TODO: extract candidate names from SELECT, WHERE, HAVING, GROUP BY and ORDER BY expressions
  // to pass down to analyzeFrom
  AnalysisContext context = new AnalysisContext(parentContext);
  RelationType tupleDescriptor = analyzeFrom(node, context);
  node.getWhere().ifPresent(where -> analyzeWhere(node, tupleDescriptor, context, where));
  List<FieldOrExpression> outputExpressions = analyzeSelect(node, tupleDescriptor, context);
  List<List<FieldOrExpression>> groupByExpressions = analyzeGroupBy(node, tupleDescriptor, context, outputExpressions);
  List<FieldOrExpression> orderByExpressions = analyzeOrderBy(node, tupleDescriptor, context, outputExpressions);
  analyzeHaving(node, tupleDescriptor, context);
  analyzeAggregations(node, tupleDescriptor, groupByExpressions, outputExpressions, orderByExpressions, context, analysis.getColumnReferences());
  analyzeWindowFunctions(node, outputExpressions, orderByExpressions);
  RelationType descriptor = computeOutputDescriptor(node, tupleDescriptor);
  analysis.setOutputDescriptor(node, descriptor);
  return descriptor;
}

代码示例来源:origin: uk.co.nichesolutions.presto/presto-parser

query.getSelect(),
query.getFrom(),
query.getWhere(),
query.getGroupBy(),
query.getHaving(),

相关文章