strongduanmu commented on code in PR #29868:
URL: https://github.com/apache/shardingsphere/pull/29868#discussion_r1469072600
##########
parser/sql/dialect/sqlserver/src/main/java/org/apache/shardingsphere/sql/parser/sqlserver/visitor/statement/SQLServerStatementVisitor.java:
##########
@@ -977,8 +985,19 @@ private SQLServerSelectStatement visitOrderBy(final
SQLServerSelectStatement sel
if (null != offset) {
limitSegment = new
LimitSegment(ctx.OFFSET().getSymbol().getStartIndex(), ctx.stop.getStopIndex(),
offset, rowcount);
}
- selectStatement.setLimit(limitSegment);
- return selectStatement;
+ return limitSegment;
+ }
+
+ private OrderBySegment getOrderBySegment(final OrderByClauseContext ctx) {
+ Collection<OrderByItemSegment> items = new LinkedList<>();
+ int orderByStartIndex = ctx.start.getStartIndex();
+ int orderByStopIndex = ctx.start.getStartIndex();
+ for (OrderByItemContext each : ctx.orderByItem()) {
+ items.add((OrderByItemSegment) visit(each));
+ orderByStopIndex = each.stop.getStopIndex();
+ }
+ OrderBySegment orderBySegment = new OrderBySegment(orderByStartIndex,
orderByStopIndex, items);
Review Comment:
Please return `new OrderBySegment(orderByStartIndex, orderByStopIndex,
items);` directly.
##########
parser/sql/dialect/sqlserver/src/main/java/org/apache/shardingsphere/sql/parser/sqlserver/visitor/statement/SQLServerStatementVisitor.java:
##########
@@ -944,15 +955,12 @@ public ASTNode visitHavingClause(final
HavingClauseContext ctx) {
}
private SQLServerSelectStatement visitOrderBy(final
SQLServerSelectStatement selectStatement, final OrderByClauseContext ctx) {
- Collection<OrderByItemSegment> items = new LinkedList<>();
- int orderByStartIndex = ctx.start.getStartIndex();
- int orderByStopIndex = ctx.start.getStartIndex();
- for (OrderByItemContext each : ctx.orderByItem()) {
- items.add((OrderByItemSegment) visit(each));
- orderByStopIndex = each.stop.getStopIndex();
- }
- OrderBySegment orderBySegment = new OrderBySegment(orderByStartIndex,
orderByStopIndex, items);
- selectStatement.setOrderBy(orderBySegment);
+ selectStatement.setOrderBy(getOrderBySegment(ctx));
+ selectStatement.setLimit(getLimitSegment(ctx));
+ return selectStatement;
Review Comment:
Please rename this param to result.
##########
parser/sql/dialect/sqlserver/src/main/java/org/apache/shardingsphere/sql/parser/sqlserver/visitor/statement/SQLServerStatementVisitor.java:
##########
@@ -977,8 +985,19 @@ private SQLServerSelectStatement visitOrderBy(final
SQLServerSelectStatement sel
if (null != offset) {
limitSegment = new
LimitSegment(ctx.OFFSET().getSymbol().getStartIndex(), ctx.stop.getStopIndex(),
offset, rowcount);
}
- selectStatement.setLimit(limitSegment);
- return selectStatement;
+ return limitSegment;
Review Comment:
Please rename this param to result.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]