refactor sql parser.

This commit is contained in:
wenshao
2017-05-31 17:01:57 +08:00
parent 969e878ca9
commit ad452e507d
11 changed files with 33 additions and 119 deletions
@@ -1,3 +1,18 @@
/*
* Copyright 1999-2017 Alibaba Group Holding Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.alibaba.druid.sql.ast;
import com.alibaba.druid.sql.visitor.SQLASTVisitor;
@@ -15,6 +15,7 @@
*/
package com.alibaba.druid.sql.ast.statement;
import com.alibaba.druid.sql.ast.SQLLimit;
import com.alibaba.druid.sql.ast.SQLObjectImpl;
import com.alibaba.druid.sql.ast.SQLOrderBy;
import com.alibaba.druid.sql.visitor.SQLASTVisitor;
@@ -26,6 +27,8 @@ public class SQLUnionQuery extends SQLObjectImpl implements SQLSelectQuery {
private SQLUnionOperator operator = SQLUnionOperator.UNION;
private SQLOrderBy orderBy;
private SQLLimit limit;
public SQLUnionOperator getOperator() {
return operator;
}
@@ -77,8 +80,20 @@ public class SQLUnionQuery extends SQLObjectImpl implements SQLSelectQuery {
acceptChild(visitor, left);
acceptChild(visitor, right);
acceptChild(visitor, orderBy);
acceptChild(visitor, limit);
}
visitor.endVisit(this);
}
public SQLLimit getLimit() {
return limit;
}
public void setLimit(SQLLimit limit) {
if (limit != null) {
limit.setParent(this);
}
this.limit = limit;
}
}