Package com.github.vlachenal.sql
Class AbstractPartBuilder
- java.lang.Object
-
- com.github.vlachenal.sql.AbstractPartBuilder
-
- Direct Known Subclasses:
FieldsBuilder,FromBuilder
public class AbstractPartBuilder extends java.lang.ObjectAbstract SQL query part builder.
Acts like a decorator to call some initialSelectBuildermethods.- Since:
- 0.1
-
-
Field Summary
Fields Modifier and Type Field Description protected SelectBuilderselectSQL select builder
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractPartBuilder(SelectBuilder select)AbstractPartBuilderconstructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SQLQuerybuild()Build SQL querySelectBuilderdone()Return the originalSelectBuilderSelectBuilderfetch(long limit)AddFETCH FIRST n ROWS ONLYFieldsBuildergroupBy(java.lang.String column)Add SQL 'group by' commandSelectBuilderhaving(ClausesBuilder clauses)Add SQL HAVING command and its clauses if not emptySelectBuilderoffset(long offset)AddOFFSET n ROWSFieldsBuilderorderBy(java.lang.String column)Add SQL 'order by' command.SelectBuilderunion(SelectBuilder other)Add union to other SQL requestSelectBuilderunionAll(SelectBuilder other)Add union to other SQL request returning duplicate entries
-
-
-
Field Detail
-
select
protected final SelectBuilder select
SQL select builder
-
-
Constructor Detail
-
AbstractPartBuilder
protected AbstractPartBuilder(SelectBuilder select)
AbstractPartBuilderconstructor- Parameters:
select- the select query builder
-
-
Method Detail
-
done
public SelectBuilder done()
Return the originalSelectBuilder- Returns:
- the
SelectBuilder
-
build
public SQLQuery build()
Build SQL query- Returns:
- the query and its prepared statement values
-
groupBy
public FieldsBuilder groupBy(java.lang.String column)
Add SQL 'group by' command- Parameters:
column- the first column to group by- Returns:
- a new
FieldsBuilderto add other columns
-
having
public SelectBuilder having(ClausesBuilder clauses)
Add SQL HAVING command and its clauses if not empty- Parameters:
clauses- the clauses- Returns:
- the
SelectBuilder
-
orderBy
public FieldsBuilder orderBy(java.lang.String column)
Add SQL 'order by' command.- Parameters:
column- the first column to order by- Returns:
- a new
FieldsBuilderto add other columns
-
union
public SelectBuilder union(SelectBuilder other)
Add union to other SQL request- Parameters:
other- the other SQL request- Returns:
- the
SelectBuilder
-
unionAll
public SelectBuilder unionAll(SelectBuilder other)
Add union to other SQL request returning duplicate entries- Parameters:
other- the other SQL request- Returns:
- the
SelectBuilder
-
offset
public SelectBuilder offset(long offset)
AddOFFSET n ROWS- Parameters:
offset- the offset value- Returns:
- the
SelectBuilder
-
fetch
public SelectBuilder fetch(long limit)
AddFETCH FIRST n ROWS ONLY- Parameters:
limit- the limit value- Returns:
- the
SelectBuilder
-
-