/** * Unit test for {@link IGroupByState#isAnyDistinct()) where the DISTINCT * keyword appears within an {@link IAggregate} in the SELECT clause. * <pre> * SELECT SUM(DISTINCT ?y) as ?x * GROUP BY ?z * HAVING ?x > 10 * </pre> */ @SuppressWarnings({ "rawtypes", "unchecked" }) public void test_isAnyDistinct_select() { final VarNode y = new VarNode("y"); final VarNode x = new VarNode("x"); final VarNode z = new VarNode("z"); final Map<String, Object> scalarValues = new HashMap<>(); scalarValues.put(Annotations.DISTINCT, Boolean.TRUE); final IValueExpressionNode xExpr = new FunctionNode(FunctionRegistry.SUM, scalarValues, y); final ProjectionNode select = new ProjectionNode(); select.addExpr(new AssignmentNode(x, xExpr)); final GroupByNode groupBy = new GroupByNode(); groupBy.addGroupByVar(z); final HavingNode having = new HavingNode(); having.addExpr(FunctionNode.GT( x, new ConstantNode(new XSDNumericIV(10)) )); new VerifyAggregates(select, groupBy, having); }
/** * Unit test for {@link IGroupByState#isAnyDistinct()) where the DISTINCT * keyword appears within an {@link IAggregate} in the SELECT clause. * <pre> * SELECT SUM(?y) as ?x * GROUP BY ?z * HAVING SUM(DISTINCT ?y) > 10 * </pre> */ @SuppressWarnings({ "rawtypes", "unchecked" }) public void test_isAnyDistinct_having() { final VarNode y = new VarNode("y"); final VarNode x = new VarNode("x"); final VarNode z = new VarNode("z"); final IValueExpressionNode xExpr = new FunctionNode(FunctionRegistry.SUM, null, y); final ProjectionNode select = new ProjectionNode(); select.addExpr(new AssignmentNode(x, xExpr)); final GroupByNode groupBy = new GroupByNode(); groupBy.addGroupByVar(z); final HavingNode having = new HavingNode(); final Map<String, Object> scalarValues = new HashMap<>(); scalarValues.put(Annotations.DISTINCT, Boolean.TRUE); having.addExpr(FunctionNode.GT( new FunctionNode(FunctionRegistry.SUM, scalarValues, y), new ConstantNode(new XSDNumericIV(10)) )); new VerifyAggregates(select, groupBy, having); }
/** * <pre> * SELECT SUM(?y) as ?x * GROUP BY ?z * HAVING ?x > 10 * </pre> */ @SuppressWarnings({ "rawtypes", "unchecked" }) public void test_simpleHavingClause() { final VarNode y = new VarNode("y"); final VarNode x = new VarNode("x"); final VarNode z = new VarNode("z"); final IValueExpressionNode xExpr = new FunctionNode( FunctionRegistry.SUM, null, y); final ProjectionNode select = new ProjectionNode(); select.addExpr(new AssignmentNode(x, xExpr)); final GroupByNode groupBy = new GroupByNode(); groupBy.addGroupByVar(z); final HavingNode having = new HavingNode(); having.addExpr(FunctionNode.GT( x, new ConstantNode(new XSDNumericIV(10)) )); new VerifyAggregates(select, groupBy, having); }
/** * <pre> * SELECT SUM(?y) as ?x * GROUP BY ?z * HAVING SUM(?y) > 10 * </pre> */ @SuppressWarnings({ "rawtypes", "unchecked" }) public void test_complexHavingClause() { final VarNode y = new VarNode("y"); final VarNode x = new VarNode("x"); final VarNode z = new VarNode("z"); final FunctionNode xExpr = new FunctionNode( FunctionRegistry.SUM, null, y); final ProjectionNode select = new ProjectionNode(); select.addExpr(new AssignmentNode(x, xExpr)); final GroupByNode groupBy = new GroupByNode(); groupBy.addGroupByVar(new VarNode(z)); final HavingNode having = new HavingNode(); having.addExpr(FunctionNode.GT( xExpr, new ConstantNode(new XSDNumericIV(10)) )); new VerifyAggregates(select, groupBy, having); }
/** * Unit test for {@link IGroupByState#isAnyDistinct()) where the DISTINCT * keyword appears within an {@link IAggregate} in the SELECT clause. * <pre> * SELECT SUM(DISTINCT ?y) as ?x * GROUP BY ?z * HAVING ?x > 10 * </pre> */ @SuppressWarnings({ "rawtypes", "unchecked" }) public void test_isAnyDistinct_select() { final VarNode y = new VarNode("y"); final VarNode x = new VarNode("x"); final VarNode z = new VarNode("z"); final Map<String, Object> scalarValues = new HashMap<>(); scalarValues.put(Annotations.DISTINCT, Boolean.TRUE); final IValueExpressionNode xExpr = new FunctionNode(FunctionRegistry.SUM, scalarValues, y); final ProjectionNode select = new ProjectionNode(); select.addExpr(new AssignmentNode(x, xExpr)); final GroupByNode groupBy = new GroupByNode(); groupBy.addGroupByVar(z); final HavingNode having = new HavingNode(); having.addExpr(FunctionNode.GT( x, new ConstantNode(new XSDNumericIV(10)) )); new VerifyAggregates(select, groupBy, having); }
/** * Unit test for {@link IGroupByState#isAnyDistinct()) where the DISTINCT * keyword appears within an {@link IAggregate} in the SELECT clause. * <pre> * SELECT SUM(?y) as ?x * GROUP BY ?z * HAVING SUM(DISTINCT ?y) > 10 * </pre> */ @SuppressWarnings({ "rawtypes", "unchecked" }) public void test_isAnyDistinct_having() { final VarNode y = new VarNode("y"); final VarNode x = new VarNode("x"); final VarNode z = new VarNode("z"); final IValueExpressionNode xExpr = new FunctionNode(FunctionRegistry.SUM, null, y); final ProjectionNode select = new ProjectionNode(); select.addExpr(new AssignmentNode(x, xExpr)); final GroupByNode groupBy = new GroupByNode(); groupBy.addGroupByVar(z); final HavingNode having = new HavingNode(); final Map<String, Object> scalarValues = new HashMap<>(); scalarValues.put(Annotations.DISTINCT, Boolean.TRUE); having.addExpr(FunctionNode.GT( new FunctionNode(FunctionRegistry.SUM, scalarValues, y), new ConstantNode(new XSDNumericIV(10)) )); new VerifyAggregates(select, groupBy, having); }
/** * <pre> * SELECT SUM(?y) as ?x * GROUP BY ?z * HAVING ?x > 10 * </pre> */ @SuppressWarnings({ "rawtypes", "unchecked" }) public void test_simpleHavingClause() { final VarNode y = new VarNode("y"); final VarNode x = new VarNode("x"); final VarNode z = new VarNode("z"); final IValueExpressionNode xExpr = new FunctionNode( FunctionRegistry.SUM, null, y); final ProjectionNode select = new ProjectionNode(); select.addExpr(new AssignmentNode(x, xExpr)); final GroupByNode groupBy = new GroupByNode(); groupBy.addGroupByVar(z); final HavingNode having = new HavingNode(); having.addExpr(FunctionNode.GT( x, new ConstantNode(new XSDNumericIV(10)) )); new VerifyAggregates(select, groupBy, having); }
/** * <pre> * SELECT SUM(?y) as ?x * GROUP BY ?z * HAVING SUM(?y) > 10 * </pre> */ @SuppressWarnings({ "rawtypes", "unchecked" }) public void test_complexHavingClause() { final VarNode y = new VarNode("y"); final VarNode x = new VarNode("x"); final VarNode z = new VarNode("z"); final FunctionNode xExpr = new FunctionNode( FunctionRegistry.SUM, null, y); final ProjectionNode select = new ProjectionNode(); select.addExpr(new AssignmentNode(x, xExpr)); final GroupByNode groupBy = new GroupByNode(); groupBy.addGroupByVar(new VarNode(z)); final HavingNode having = new HavingNode(); having.addExpr(FunctionNode.GT( xExpr, new ConstantNode(new XSDNumericIV(10)) )); new VerifyAggregates(select, groupBy, having); }
final FunctionNode filterLt = FunctionNode.LT(new VarNode("s"), new VarNode("o")); final FunctionNode filterGe = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGt = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLeInv = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLtInv = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGeInv = FunctionNode.LT(new VarNode("s"), new VarNode("o"));
final FunctionNode filterLt = FunctionNode.LT(new VarNode("s"), new VarNode("o")); final FunctionNode filterGe = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGt = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLeInv = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLtInv = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGeInv = FunctionNode.LT(new VarNode("s"), new VarNode("o"));
final FunctionNode filterLt = FunctionNode.LT(new VarNode("s"), new VarNode("o")); final FunctionNode filterGe = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGt = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLeInv = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLtInv = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGeInv = FunctionNode.LT(new VarNode("s"), new VarNode("o"));
final FunctionNode filterLt = FunctionNode.LT(new VarNode("s"), new VarNode("o")); final FunctionNode filterGe = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGt = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLeInv = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLtInv = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGeInv = FunctionNode.LT(new VarNode("s"), new VarNode("o"));
new ConstantNode(dcDate), new VarNode("date"))); whereClause.addChild(new FilterNode(FunctionNode.GT( new VarNode("date"), new ConstantNode(dateTime))));
Scope.NAMED_CONTEXTS)); graphGroup.addChild(new FilterNode(FunctionNode.GT(new VarNode( "date"), new ConstantNode(dateTime))));
Scope.NAMED_CONTEXTS)); graphGroup.addChild(new FilterNode(FunctionNode.GT(new VarNode( "date"), new ConstantNode(dateTime))));
final FunctionNode filterLt = FunctionNode.LT(new VarNode("s"), new VarNode("o")); final FunctionNode filterGe = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGt = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLeInv = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLtInv = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGeInv = FunctionNode.LT(new VarNode("s"), new VarNode("o"));
final FunctionNode filterLt = FunctionNode.LT(new VarNode("s"), new VarNode("o")); final FunctionNode filterGe = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGt = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLeInv = FunctionNode.GT(new VarNode("s"), new VarNode("o")); final FunctionNode filterLtInv = FunctionNode.GE(new VarNode("s"), new VarNode("o")); final FunctionNode filterGeInv = FunctionNode.LT(new VarNode("s"), new VarNode("o"));
new ConstantNode(dcDate), new VarNode("date"))); whereClause.addChild(new FilterNode(FunctionNode.GT( new VarNode("date"), new ConstantNode(dateTime))));
Scope.NAMED_CONTEXTS)); graphGroup.addChild(new FilterNode(FunctionNode.GT(new VarNode( "date"), new ConstantNode(dateTime))));
Scope.NAMED_CONTEXTS)); graphGroup.addChild(new FilterNode(FunctionNode.GT(new VarNode( "date"), new ConstantNode(dateTime))));