|
@@ -1,6 +1,7 @@
|
|
|
package org.example.join.sql;
|
|
|
|
|
|
import org.example.join.domain.Table;
|
|
|
+import org.example.join.domain.TableJoin;
|
|
|
import org.example.join.util.SqlConstant;
|
|
|
|
|
|
public class From<R> extends SqlWrapper<R> {
|
|
@@ -13,15 +14,21 @@ public class From<R> extends SqlWrapper<R> {
|
|
|
}
|
|
|
|
|
|
public Join<R> innerJoin(Table table) {
|
|
|
- return new Join<>(this, sql, SqlConstant.INNER_JOIN, table);
|
|
|
+ return join(SqlConstant.INNER_JOIN, table);
|
|
|
}
|
|
|
|
|
|
public Join<R> leftJoin(Table table) {
|
|
|
- return new Join<>(this, sql, SqlConstant.LEFT_JOIN, table);
|
|
|
+ return join(SqlConstant.LEFT_JOIN, table);
|
|
|
}
|
|
|
|
|
|
public Join<R> rightJoin(Table table) {
|
|
|
- return new Join<>(this, sql, SqlConstant.RIGHT_JOIN, table);
|
|
|
+ return join(SqlConstant.RIGHT_JOIN, table);
|
|
|
+ }
|
|
|
+
|
|
|
+ private Join<R> join(String joinType, Table table) {
|
|
|
+ TableJoin tableJoin = new TableJoin(joinType, table);
|
|
|
+ sql.queryTableList.add(tableJoin);
|
|
|
+ return new Join<>(this, tableJoin.getQueryConditionList());
|
|
|
}
|
|
|
|
|
|
}
|