/** * Override equals() method. * @param obj Other object * @return True if equal */ public boolean equals(Object obj) { // Use super.equals() to check obvious stuff and variable if(obj == this) { return true; } if(! (obj instanceof SubquerySetCriteria)) { return false; } SubquerySetCriteria sc = (SubquerySetCriteria)obj; return this.isNegated() == sc.isNegated() && EquivalenceUtil.areEqual(getExpression(), sc.getExpression()) && EquivalenceUtil.areEqual(getCommand(), sc.getCommand()) && this.subqueryHint.equals(sc.getSubqueryHint()); }
/** * Override equals() method. * @param obj Other object * @return True if equal */ public boolean equals(Object obj) { // Use super.equals() to check obvious stuff and variable if(obj == this) { return true; } if(! (obj instanceof SubquerySetCriteria)) { return false; } SubquerySetCriteria sc = (SubquerySetCriteria)obj; return this.isNegated() == sc.isNegated() && EquivalenceUtil.areEqual(getExpression(), sc.getExpression()) && EquivalenceUtil.areEqual(getCommand(), sc.getCommand()) && this.subqueryHint.equals(sc.getSubqueryHint()); }
/** * Override equals() method. * @param obj Other object * @return True if equal */ public boolean equals(Object obj) { // Use super.equals() to check obvious stuff and variable if(obj == this) { return true; } if(! (obj instanceof SubquerySetCriteria)) { return false; } SubquerySetCriteria sc = (SubquerySetCriteria)obj; return this.isNegated() == sc.isNegated() && EquivalenceUtil.areEqual(getExpression(), sc.getExpression()) && EquivalenceUtil.areEqual(getCommand(), sc.getCommand()) && this.subqueryHint.equals(sc.getSubqueryHint()); }
@Override public void visit( SubquerySetCriteria obj ) { // variable visitNode(obj.getExpression()); // operator and beginning of list append(SPACE); if (obj.isNegated()) { append(NOT); append(SPACE); } append(IN); addSubqueryHint(obj.getSubqueryHint()); append(" ("); //$NON-NLS-1$ visitNode(obj.getCommand()); append(")"); //$NON-NLS-1$ }
@Override public void visit( SubquerySetCriteria obj ) { // variable visitNode(obj.getExpression()); // operator and beginning of list append(SPACE); if (obj.isNegated()) { append(NOT); append(SPACE); } append(IN); addSubqueryHint(obj.getSubqueryHint()); append(" ("); //$NON-NLS-1$ visitNode(obj.getCommand()); append(")"); //$NON-NLS-1$ }
@Override public void visit( SubquerySetCriteria obj ) { // variable visitNode(obj.getExpression()); // operator and beginning of list append(SPACE); if (obj.isNegated()) { append(NOT); append(SPACE); } append(IN); addSubqueryHint(obj.getSubqueryHint()); append(" ("); //$NON-NLS-1$ visitNode(obj.getCommand()); append(")"); //$NON-NLS-1$ }
if (ssc.getSubqueryHint().isNoUnnest()) { return result; result.type = ssc.getClass(); crit = new SubqueryCompareCriteria(ssc.getExpression(), ssc.getCommand(), SubqueryCompareCriteria.EQ, SubqueryCompareCriteria.SOME); ((SubqueryCompareCriteria)crit).setSubqueryHint(ssc.getSubqueryHint()); } else if (crit instanceof CompareCriteria) { CompareCriteria cc = (CompareCriteria)crit;
if (ssc.getSubqueryHint().isNoUnnest()) { return result; result.type = ssc.getClass(); crit = new SubqueryCompareCriteria(ssc.getExpression(), ssc.getCommand(), SubqueryCompareCriteria.EQ, SubqueryCompareCriteria.SOME); ((SubqueryCompareCriteria)crit).setSubqueryHint(ssc.getSubqueryHint()); } else if (crit instanceof CompareCriteria) { CompareCriteria cc = (CompareCriteria)crit;
if (ssc.getSubqueryHint().isNoUnnest()) { return result; result.type = ssc.getClass(); crit = new SubqueryCompareCriteria(ssc.getExpression(), ssc.getCommand(), SubqueryCompareCriteria.EQ, SubqueryCompareCriteria.SOME); ((SubqueryCompareCriteria)crit).setSubqueryHint(ssc.getSubqueryHint()); } else if (crit instanceof CompareCriteria) { CompareCriteria cc = (CompareCriteria)crit;
static Query exampleIn(boolean semiJoin) { GroupSymbol g = new GroupSymbol("db.g"); //$NON-NLS-1$ From from = new From(); from.addGroup(g); Select select = new Select(); select.addSymbol(new ElementSymbol("a")); //$NON-NLS-1$ Expression expr = new ElementSymbol("b"); //$NON-NLS-1$ Criteria criteria = new CompareCriteria(new ElementSymbol("a2"), CompareCriteria.EQ, //$NON-NLS-1$ new Constant(new Integer(5))); Query query = new Query(); query.setSelect(select); query.setFrom(from); query.setCriteria(criteria); SubquerySetCriteria subCrit = new SubquerySetCriteria(expr, query); subCrit.getSubqueryHint().setMergeJoin(semiJoin); Query outer = new Query(); outer.setSelect(select); outer.setFrom(from); outer.setCriteria(subCrit); return outer; }