From c361cd420cee2f982c27d6262bd1631ad3a04fda Mon Sep 17 00:00:00 2001 From: "shaojin.wensj" Date: Wed, 5 Aug 2015 16:33:29 +0800 Subject: [PATCH] improved odps sql formatter --- .../druid/sql/dialect/odps/visitor/OdpsOutputVisitor.java | 2 +- .../alibaba/druid/bvt/sql/odps/OdpsFormatCommentTest20.java | 2 +- .../alibaba/druid/bvt/sql/odps/OdpsSelectTest_mapjoin.java | 5 +++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/alibaba/druid/sql/dialect/odps/visitor/OdpsOutputVisitor.java b/src/main/java/com/alibaba/druid/sql/dialect/odps/visitor/OdpsOutputVisitor.java index 37155f7e1d..d4dff6a431 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/odps/visitor/OdpsOutputVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/odps/visitor/OdpsOutputVisitor.java @@ -350,9 +350,9 @@ public class OdpsOutputVisitor extends SQLASTOutputVisitor implements OdpsASTVis x.getRight().accept(this); if (x.getCondition() != null) { - incrementIndent(); println(); print("ON "); + incrementIndent(); x.getCondition().accept(this); decrementIndent(); } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsFormatCommentTest20.java b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsFormatCommentTest20.java index 1bdf668fae..d45c1060b4 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsFormatCommentTest20.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsFormatCommentTest20.java @@ -12,7 +12,7 @@ public class OdpsFormatCommentTest20 extends TestCase { Assert.assertEquals("SELECT *" + "\nFROM a" + "\nFULL OUTER JOIN b" - + "\n\tON a.id = b.id", SQLUtils.formatOdps(sql)); + + "\nON a.id = b.id", SQLUtils.formatOdps(sql)); } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsSelectTest_mapjoin.java b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsSelectTest_mapjoin.java index 0934e0d8eb..31a79cebc9 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsSelectTest_mapjoin.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsSelectTest_mapjoin.java @@ -29,13 +29,14 @@ public class OdpsSelectTest_mapjoin extends TestCase { + "\nb.customer_id," + "\nb.total_price" + "\nfrom shop a join sale_detail b" - + "\non a.shop_name = b.shop_name;"; + + "\non a.shop_name = b.shop_name and b.ds = '20150101';"; Assert.assertEquals("SELECT /*+ mapjoin(a) */ a.shop_name" + "\n\t, b.customer_id" + "\n\t, b.total_price" + "\nFROM shop a" + "\nJOIN sale_detail b" - + "\n\tON a.shop_name = b.shop_name;", SQLUtils.formatOdps(sql)); + + "\nON a.shop_name = b.shop_name" + + "\n\tAND b.ds = '20150101';", SQLUtils.formatOdps(sql)); }