Author: jgbutler Date: Wed Apr 28 16:41:34 2010 New Revision: 939007 URL: http://svn.apache.org/viewvc?rev=939007&view=rev Log: Add support for DISTINCT in SelectBuilder
Modified: ibatis/java/ibatis-3/trunk/src/main/java/org/apache/ibatis/jdbc/SelectBuilder.java Modified: ibatis/java/ibatis-3/trunk/src/main/java/org/apache/ibatis/jdbc/SelectBuilder.java URL: http://svn.apache.org/viewvc/ibatis/java/ibatis-3/trunk/src/main/java/org/apache/ibatis/jdbc/SelectBuilder.java?rev=939007&r1=939006&r2=939007&view=diff ============================================================================== --- ibatis/java/ibatis-3/trunk/src/main/java/org/apache/ibatis/jdbc/SelectBuilder.java (original) +++ ibatis/java/ibatis-3/trunk/src/main/java/org/apache/ibatis/jdbc/SelectBuilder.java Wed Apr 28 16:41:34 2010 @@ -22,6 +22,10 @@ public class SelectBuilder { sql().select.add(columns); } + public static void DISTINCT(boolean distinct) { + sql().distinct = distinct; + } + public static void FROM(String table) { sql().from.add(table); } @@ -75,7 +79,12 @@ public class SelectBuilder { public static String SQL() { try { StringBuilder builder = new StringBuilder(); - selectClause(builder, "SELECT", sql().select, "", "", ", "); + if (sql().distinct) { + selectClause(builder, "SELECT DISTINCT", sql().select, "", "", ", "); + } else { + selectClause(builder, "SELECT", sql().select, "", "", ", "); + } + selectClause(builder, "FROM", sql().from, "", "", ", "); selectClause(builder, "JOIN", sql().join, "", "", "JOIN"); selectClause(builder, "INNER JOIN", sql().innerJoin, "", "", "\nINNER JOIN "); @@ -133,6 +142,7 @@ public class SelectBuilder { List<String> groupBy = new ArrayList<String>(); List<String> orderBy = new ArrayList<String>(); List<String> lastList = new ArrayList<String>(); + boolean distinct; } }