public final class QueryBuilder extends Object
JDBDT.select(String...)
,
Query
Constructor and Description |
---|
QueryBuilder()
Constructs a new query builder.
|
Modifier and Type | Method and Description |
---|---|
QueryBuilder |
arguments(Object... args)
Set arguments for query.
|
Query |
build(DB db)
Build the query.
|
QueryBuilder |
columns(String... columns)
Set query columns.
|
QueryBuilder |
distinct()
Set DISTINCT clause for query.
|
QueryBuilder |
from(String... sources)
Set FROM clause.
|
QueryBuilder |
from(Table t)
Set table as the data source to this query.
|
QueryBuilder |
groupBy(String... fields)
Set GROUP BY clause for query.
|
QueryBuilder |
having(String clause)
Set HAVING clause for query.
|
QueryBuilder |
limit(int n)
Set LIMIT clause for query.
|
QueryBuilder |
orderBy(String... fields)
Set ORDER BY clause for query.
|
String |
toString()
Get textual representation.
|
QueryBuilder |
where(String clause)
Set WHERE clause for query.
|
@SafeVarargs public final QueryBuilder columns(String... columns)
columns
- Columns to set.public final QueryBuilder from(Table t)
A call to this method is shorthand for from(t.getName())
.
t
- Table source.@SafeVarargs public final QueryBuilder from(String... sources)
sources
- Data sources.public final QueryBuilder where(String clause)
clause
- String for WHERE clause.public final QueryBuilder distinct()
@SafeVarargs public final QueryBuilder groupBy(String... fields)
fields
- GROUP BY fields.@SafeVarargs public final QueryBuilder orderBy(String... fields)
Note that setting the ORDER BY clause will not generally affect the result of database assertions by JDBDT, since these do not attend to the order of query results. Setting LIMIT in combination with ORDER BY will affect the query results but the order of returned rows (even if limited in number) will not be verified.
Setting the ORDER BY clause will also likely impact on the performance of query execution, but may be useful for debugging purposes.
fields
- ORDER BY fields.public final QueryBuilder having(String clause)
clause
- String for HAVING clause.public final QueryBuilder limit(int n)
n
- Query limit.InvalidOperationException
- for an invalid LIMIT value (lower or equal than 0).@SafeVarargs public final QueryBuilder arguments(Object... args)
args
- Arguments.public final Query build(DB db)
db
- Database handle.Copyright © 2016–2021 JDBDT. All rights reserved.