@Override public ParseNode visitLeave(final BetweenParseNode node, List<ParseNode> nodes) throws SQLException { LessThanOrEqualParseNode lhsNode = NODE_FACTORY.lte(node.getChildren().get(1), node.getChildren().get(0)); LessThanOrEqualParseNode rhsNode = NODE_FACTORY.lte(node.getChildren().get(0), node.getChildren().get(2)); List<ParseNode> parseNodes = Lists.newArrayListWithExpectedSize(2); parseNodes.add(this.visitLeave(lhsNode, lhsNode.getChildren())); parseNodes.add(this.visitLeave(rhsNode, rhsNode.getChildren())); return super.visitLeave(node, parseNodes); }
@Override public void toSQL(ColumnResolver resolver, StringBuilder buf) { List<ParseNode> children = getChildren(); children.get(0).toSQL(resolver, buf); if (negate) buf.append(" NOT"); buf.append(" BETWEEN "); children.get(1).toSQL(resolver, buf); buf.append(" AND "); children.get(2).toSQL(resolver, buf); } }
@Override public ParseNode visitLeave(final BetweenParseNode node, List<ParseNode> nodes) throws SQLException { LessThanOrEqualParseNode lhsNode = NODE_FACTORY.lte(node.getChildren().get(1), node.getChildren().get(0)); LessThanOrEqualParseNode rhsNode = NODE_FACTORY.lte(node.getChildren().get(0), node.getChildren().get(2)); List<ParseNode> parseNodes = Lists.newArrayListWithExpectedSize(2); parseNodes.add(this.visitLeave(lhsNode, lhsNode.getChildren())); parseNodes.add(this.visitLeave(rhsNode, rhsNode.getChildren())); return super.visitLeave(node, parseNodes); }
@Override public void toSQL(ColumnResolver resolver, StringBuilder buf) { List<ParseNode> children = getChildren(); children.get(0).toSQL(resolver, buf); if (negate) buf.append(" NOT"); buf.append(" BETWEEN "); children.get(1).toSQL(resolver, buf); buf.append(" AND "); children.get(2).toSQL(resolver, buf); } }
@Override public ParseNode visitLeave(final BetweenParseNode node, List<ParseNode> nodes) throws SQLException { LessThanOrEqualParseNode lhsNode = NODE_FACTORY.lte(node.getChildren().get(1), node.getChildren().get(0)); LessThanOrEqualParseNode rhsNode = NODE_FACTORY.lte(node.getChildren().get(0), node.getChildren().get(2)); List<ParseNode> parseNodes = Lists.newArrayListWithExpectedSize(2); parseNodes.add(this.visitLeave(lhsNode, lhsNode.getChildren())); parseNodes.add(this.visitLeave(rhsNode, rhsNode.getChildren())); return super.visitLeave(node, parseNodes); }
@Override public void toSQL(ColumnResolver resolver, StringBuilder buf) { List<ParseNode> children = getChildren(); children.get(0).toSQL(resolver, buf); if (negate) buf.append(" NOT"); buf.append(" BETWEEN "); children.get(1).toSQL(resolver, buf); buf.append(" AND "); children.get(2).toSQL(resolver, buf); } }