groupBy.addSymbol(new ElementSymbol("a")); //$NON-NLS-1$
groupBy.addSymbol(new ElementSymbol("b")); //$NON-NLS-1$
CompoundCriteria having = new CompoundCriteria();
having.setOperator(CompoundCriteria.AND);
having.addCriteria(new CompareCriteria(
new AggregateSymbol("count", "COUNT", false, new ElementSymbol("b", false)), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
CompareCriteria.GT,
new Constant(new Integer(0)) ));
having.addCriteria(new CompareCriteria(
new Function("+", new Expression[] { new ElementSymbol("b", false), new Constant(new Integer(5)) }), //$NON-NLS-1$ //$NON-NLS-2$
CompareCriteria.GT,
new Constant(new Integer(0)) ));
Query query = new Query();