org.apache.jena.query.Query.getGroupBy()方法的使用及代码示例

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

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

Query.getGroupBy介绍

暂无

代码示例

代码示例来源:origin: apache/tinkerpop

  1. final VarExprList lstExpr = query.getGroupBy();
  2. String grpVar = "";
  3. for (Var expr : lstExpr.getVars()) {

代码示例来源:origin: apache/jena

  1. @Override
  2. public void visitGroupBy(Query query1)
  3. {
  4. check("GROUP BY", query1.getGroupBy(), query2.getGroupBy()) ;
  5. }

代码示例来源:origin: SmartDataAnalytics/jena-sparql-api

  1. public static boolean isGroupedOnlyByVar(Query query, Var groupVar) {
  2. boolean result = false;
  3. boolean hasOneGroup = query.getGroupBy().size() == 1;
  4. if(hasOneGroup) {
  5. Expr expr = query.getGroupBy().getExprs().values().iterator().next();
  6. if(expr instanceof ExprVar) {
  7. Var v = expr.asVar();
  8. result = v.equals(groupVar);
  9. }
  10. }
  11. return result;
  12. }

代码示例来源:origin: apache/jena

  1. @Override
  2. public void visitGroupBy(Query query)
  3. {
  4. if ( query.hasGroupBy() )
  5. x ^= query.getGroupBy().hashCode() ;
  6. }

代码示例来源:origin: apache/jena

  1. @Override
  2. public void visitGroupBy(Query query)
  3. {
  4. if ( query.hasGroupBy() )
  5. {
  6. // Can have an empty GROUP BY list if the groupin gis implicit
  7. // by use of an aggregate in the SELECT clause.
  8. if ( ! query.getGroupBy().isEmpty() )
  9. {
  10. out.print("GROUP BY ") ;
  11. appendNamedExprList(query, out, query.getGroupBy()) ;
  12. out.println();
  13. }
  14. }
  15. }

代码示例来源:origin: apache/jena

  1. /**
  2. * Copy all the modifications from the Solution Modifier argument
  3. * @param solutionModifier The solution modifier to copy from.
  4. */
  5. public void addAll(SolutionModifierHandler solutionModifier) {
  6. List<SortCondition> lst = solutionModifier.query.getOrderBy();
  7. if (lst != null) {
  8. for (SortCondition sc : lst) {
  9. query.addOrderBy(sc);
  10. }
  11. }
  12. query.getGroupBy().addAll(solutionModifier.query.getGroupBy());
  13. query.getHavingExprs().addAll(solutionModifier.query.getHavingExprs());
  14. query.setLimit(solutionModifier.query.getLimit());
  15. query.setOffset(solutionModifier.query.getOffset());
  16. }

代码示例来源:origin: apache/jena

  1. @Override
  2. public void setVars(Map<Var, Node> values) {
  3. if (values.isEmpty()) {
  4. return;
  5. }
  6. ExprRewriter exprRewriter = new ExprRewriter(values);
  7. ExprList having = exprRewriter.rewrite(new ExprList(query
  8. .getHavingExprs()));
  9. List<SortCondition> orderBy = exprRewriter
  10. .rewriteSortConditionList(query.getOrderBy());
  11. VarExprList groupBy = exprRewriter.rewrite(query.getGroupBy());
  12. query.getHavingExprs().clear();
  13. query.getHavingExprs().addAll(having.getList());
  14. if (orderBy != null) {
  15. if (query.getOrderBy() == null) {
  16. for (SortCondition sc : orderBy) {
  17. query.addOrderBy(sc);
  18. }
  19. } else {
  20. query.getOrderBy().clear();
  21. query.getOrderBy().addAll(orderBy);
  22. }
  23. }
  24. query.getGroupBy().clear();
  25. query.getGroupBy().addAll(groupBy);
  26. }

代码示例来源:origin: org.apache.jena/jena-querybuilder

  1. /**
  2. * Copy all the modifications from the Solution Modifier argument
  3. * @param solutionModifier The solution modifier to copy from.
  4. */
  5. public void addAll(SolutionModifierHandler solutionModifier) {
  6. List<SortCondition> lst = solutionModifier.query.getOrderBy();
  7. if (lst != null) {
  8. for (SortCondition sc : lst) {
  9. query.addOrderBy(sc);
  10. }
  11. }
  12. query.getGroupBy().addAll(solutionModifier.query.getGroupBy());
  13. query.getHavingExprs().addAll(solutionModifier.query.getHavingExprs());
  14. query.setLimit(solutionModifier.query.getLimit());
  15. query.setOffset(solutionModifier.query.getOffset());
  16. }

代码示例来源:origin: apache/jena

  1. @Override
  2. public void visitGroupBy(Query query) {
  3. if (query.hasGroupBy()) {
  4. VarExprList x = query.getGroupBy();
  5. for (Var v : x.getVars()) {
  6. Expr expr = x.getExpr(v);
  7. if (expr == null)
  8. newQuery.addGroupBy(v);
  9. else
  10. newQuery.addGroupBy(v, expr);
  11. }
  12. }
  13. }

代码示例来源:origin: org.apache.jena/jena-querybuilder

  1. @Override
  2. public void setVars(Map<Var, Node> values) {
  3. if (values.isEmpty()) {
  4. return;
  5. }
  6. ExprRewriter exprRewriter = new ExprRewriter(values);
  7. ExprList having = exprRewriter.rewrite(new ExprList(query
  8. .getHavingExprs()));
  9. List<SortCondition> orderBy = exprRewriter
  10. .rewriteSortConditionList(query.getOrderBy());
  11. VarExprList groupBy = exprRewriter.rewrite(query.getGroupBy());
  12. query.getHavingExprs().clear();
  13. query.getHavingExprs().addAll(having.getList());
  14. if (orderBy != null) {
  15. if (query.getOrderBy() == null) {
  16. for (SortCondition sc : orderBy) {
  17. query.addOrderBy(sc);
  18. }
  19. } else {
  20. query.getOrderBy().clear();
  21. query.getOrderBy().addAll(orderBy);
  22. }
  23. }
  24. query.getGroupBy().clear();
  25. query.getGroupBy().addAll(groupBy);
  26. }

代码示例来源:origin: SmartDataAnalytics/jena-sparql-api

  1. @Override
  2. public void visitGroupBy(Query query) {
  3. if ( query.hasGroupBy() ) {
  4. VarExprList x = query.getGroupBy() ;
  5. for (Var v : x.getVars()) {
  6. Expr expr = x.getExpr(v) ;
  7. if ( expr == null )
  8. newQuery.addGroupBy(v) ;
  9. else
  10. newQuery.addGroupBy(v, expr) ;
  11. }
  12. }
  13. }

代码示例来源:origin: apache/jena

  1. VarExprList groupKey = query.getGroupBy() ;

代码示例来源:origin: SmartDataAnalytics/jena-sparql-api

  1. public static Query transform(Query query, ElementTransform transform, ExprTransform exprTransform) {
  2. Query q2 = QueryTransformOps.shallowCopy(query) ;
  3. transformVarExprList(q2.getProject(), exprTransform) ;
  4. transformVarExprList(q2.getGroupBy(), exprTransform) ;
  5. // Nothing to do about ORDER BY - leave to sort by that variable.
  6. Element el = q2.getQueryPattern() ;
  7. Element el2 = ElementTransformer.transform(el, transform, exprTransform) ;
  8. // Top level is always a group.
  9. if ( ! ( el2 instanceof ElementGroup ) ) {
  10. ElementGroup eg = new ElementGroup() ;
  11. eg.addElement(el2);
  12. el2 = eg ;
  13. }
  14. q2.setQueryPattern(el2) ;
  15. return q2 ;
  16. }

代码示例来源:origin: apache/jena

  1. private static void check(Query query, Collection<Var> vars)
  2. {
  3. // Check any expressions are assigned to fresh variables.
  4. checkExprListAssignment(vars, query.getProject()) ;
  5. // Check for SELECT * GROUP BY
  6. // Legal in ARQ, not in SPARQL 1.1
  7. if ( ! Syntax.syntaxARQ.equals(query.getSyntax()) )
  8. {
  9. if ( query.isQueryResultStar() && query.hasGroupBy() )
  10. throw new QueryParseException("SELECT * not legal with GROUP BY", -1 , -1) ;
  11. }
  12. // Check any variable in an expression is in scope (if GROUP BY)
  13. checkExprVarUse(query) ;
  14. // Check GROUP BY AS
  15. // ENABLE
  16. if ( false && query.hasGroupBy() )
  17. {
  18. VarExprList exprList2 = query.getGroupBy() ;
  19. checkExprListAssignment(vars, exprList2) ;
  20. // CHECK
  21. }
  22. }

代码示例来源:origin: apache/jena

  1. query.getGroupBy().addAll(level.opGroup.getGroupVars()) ;
  2. level.opGroup.getAggregators().forEach(eAgg -> {
  3. ExprVar v = eAgg.getAggVar() ;

代码示例来源:origin: apache/jena

  1. /** Transform a query using {@link ElementTransform} and {@link ExprTransform}.
  2. * It is the responsibility of these transforms to transform to a legal SPARQL query.
  3. */
  4. public static Query transform(Query query, ElementTransform transform, ExprTransform exprTransform) {
  5. Query q2 = QueryTransformOps.shallowCopy(query);
  6. // "Shallow copy with transform."
  7. transformVarExprList(q2.getProject(), exprTransform);
  8. transformVarExprList(q2.getGroupBy(), exprTransform);
  9. transformExprList(q2.getHavingExprs(), exprTransform);
  10. if (q2.getOrderBy() != null) {
  11. transformSortConditions(q2.getOrderBy(), exprTransform);
  12. }
  13. // ?? DOES NOT WORK: transformExprListAgg(q2.getAggregators(), exprTransform) ; ??
  14. // if ( q2.hasHaving() ) {}
  15. // if ( q2.hasAggregators() ) {}
  16. Element el = q2.getQueryPattern();
  17. Element el2 = ElementTransformer.transform(el, transform, exprTransform);
  18. // Top level is always a group.
  19. if (!(el2 instanceof ElementGroup)) {
  20. ElementGroup eg = new ElementGroup();
  21. eg.addElement(el2);
  22. el2 = eg;
  23. }
  24. q2.setQueryPattern(el2);
  25. return q2;
  26. }

代码示例来源:origin: SmartDataAnalytics/jena-sparql-api

  1. public static long countQuery(Query query, QueryExecutionFactory qef) {
  2. boolean needsWrapping = !query.getGroupBy().isEmpty() || !query.getAggregators().isEmpty();

代码示例来源:origin: apache/jena

  1. op = OpGroup.create(op, query.getGroupBy(), query.getAggregators()) ;

代码示例来源:origin: rdfhdt/hdt-java

  1. if(ag==null || !query.getHavingExprs().isEmpty() || !query.getGroupBy().isEmpty() || query.hasLimit() || query.hasOffset() || !( (ag instanceof AggCount) || (ag instanceof AggCountVar) || (ag instanceof AggCountDistinct) || (ag instanceof AggCountVarDistinct)) ) {
  2. return null;

相关文章