---
title: API Reference
nav_order: 10
description: "Complete public method tables for every class and interface in JavaQueryBuilder"
---
# API Reference
{: .no_toc }
## Table of contents
{: .no_toc .text-delta }
1. TOC
{:toc}
---
## builder
### `QueryBuilder`
Main entry point for SELECT queries and static gateway to DML builders.
**Static factory methods**
| Method | Returns | Description |
| -------- | --------- | ------------- |
| `insert()` | `InsertBuilder` | New `InsertBuilder` |
| `insertInto(String table)` | `InsertBuilder` | New `InsertBuilder` pre-set to `table` |
| `update()` | `UpdateBuilder` | New `UpdateBuilder` |
| `update(String table)` | `UpdateBuilder` | New `UpdateBuilder` pre-set to `table` |
| `delete()` | `DeleteBuilder` | New `DeleteBuilder` |
| `deleteFrom(String table)` | `DeleteBuilder` | New `DeleteBuilder` pre-set to `table` |
| `createTable()` | `CreateBuilder` | New `CreateBuilder` |
| `createTable(String table)` | `CreateBuilder` | New `CreateBuilder` pre-set to `table` |
**SELECT builder methods**
| Method | Returns | Description |
| -------- | --------- | ------------- |
| `from(String table)` | `QueryBuilder` | Set source table |
| `select(String... columns)` | `QueryBuilder` | Add columns to SELECT clause; omit for `SELECT *` |
| `distinct()` | `QueryBuilder` | Add `DISTINCT` to SELECT |
| `whereEquals(col, val)` | `QueryBuilder` | `WHERE col = ?` (AND) |
| `orWhereEquals(col, val)` | `QueryBuilder` | `WHERE col = ?` (OR) |
| `whereNotEquals(col, val)` | `QueryBuilder` | `WHERE col != ?` (AND) |
| `whereGreaterThan(col, val)` | `QueryBuilder` | `WHERE col > ?` (AND) |
| `whereGreaterThanOrEquals(col, val)` | `QueryBuilder` | `WHERE col >= ?` (AND) |
| `whereLessThan(col, val)` | `QueryBuilder` | `WHERE col < ?` (AND) |
| `whereLessThanOrEquals(col, val)` | `QueryBuilder` | `WHERE col )` | `QueryBuilder` | `WHERE col NOT IN (...)` (AND) |
| `whereBetween(col, a, b)` | `QueryBuilder` | `WHERE col BETWEEN ? AND ?` (AND) |
| `whereInSubquery(col, Query)` | `QueryBuilder` | `WHERE col IN (SELECT ...)` (AND) |
| `whereEqualsSubquery(col, Query)` | `QueryBuilder` | `WHERE col = (SELECT ...)` (AND) |
| `whereExistsSubquery(Query)` | `QueryBuilder` | `WHERE EXISTS (SELECT ...)` (AND) |
| `whereNotExistsSubquery(Query)` | `QueryBuilder` | `WHERE NOT EXISTS (SELECT ...)` (AND) |
| `fromSubquery(Query, String alias)` | `QueryBuilder` | Replace `FROM` with a derived-table subquery |
| `joinSubquery(Query, String alias, String on)` | `QueryBuilder` | `INNER JOIN (SELECT ...) AS alias ON ...` |
| `selectSubquery(Query, String alias)` | `QueryBuilder` | Add `(SELECT ...) AS alias` to SELECT list |
| `groupBy(String... columns)` | `QueryBuilder` | Add `GROUP BY` columns |
| `havingRaw(String clause)` | `QueryBuilder` | Set raw `HAVING` SQL fragment |
| `orderBy(String col, boolean asc)` | `QueryBuilder` | Add `ORDER BY` column; `true` = ASC |
| `limit(int n)` | `QueryBuilder` | Set `LIMIT` |
| `offset(int n)` | `QueryBuilder` | Set `OFFSET` |
| `build()` | `Query` | Build a `Query` object (no SQL rendered yet) |
| `buildSql()` | `SqlResult` | Render SELECT using table set via `from()`, standard dialect |
| `buildSql(SqlDialect)` | `SqlResult` | Render SELECT using table set via `from()`, specified dialect |
| `buildSql(String table)` | `SqlResult` | Render SELECT for explicit `table`, standard dialect |
| `buildSql(String table, SqlDialect)` | `SqlResult` | Render SELECT for explicit `table` and dialect |
| `withDefaults(QueryBuilderDefaults)` | `QueryBuilder` | Set per-instance configuration defaults; throws `NullPointerException` if `null` |
---
### `SelectBuilder`
Lower-level SELECT builder that produces `SqlResult` directly (no `Query` intermediary).
| Method | Returns | Description |
| -------- | --------- | ------------- |
| `from(String table)` | `SelectBuilder` | Set source table |
| `select(String... columns)` | `SelectBuilder` | Add SELECT columns |
| `distinct()` | `SelectBuilder` | Add `DISTINCT` |
| `whereEquals(col, val)` | `SelectBuilder` | `WHERE col = ?` |
| `whereIn(col, List)` | `SelectBuilder` | `WHERE col IN (...)` |
| `whereLike(col, String val)` | `SelectBuilder` | `WHERE col LIKE ?` |
| `groupBy(String... columns)` | `SelectBuilder` | Add `GROUP BY` |
| `orderBy(String col, boolean asc)` | `SelectBuilder` | Add `ORDER BY` |
| `limit(int n)` | `SelectBuilder` | Set `LIMIT` |
| `offset(int n)` | `SelectBuilder` | Set `OFFSET` |
| `withDefaults(QueryBuilderDefaults)` | `SelectBuilder` | Set per-instance configuration defaults; throws `NullPointerException` if `null` |
| `build()` | `SqlResult` | Render SELECT using defaults dialect |
| `build(SqlDialect)` | `SqlResult` | Render SELECT with given dialect |
---
### `InsertBuilder`
| Method | Returns | Description |
| -------- | --------- | ------------- |
| `into(String table)` | `InsertBuilder` | Set target table |
| `value(String col, Object val)` | `InsertBuilder` | Add a column/value pair |
| `build()` | `SqlResult` | Render with standard dialect |
| `build(SqlDialect)` | `SqlResult` | Render with specified dialect |
---
### `UpdateBuilder`
| Method | Returns | Description |
| -------- | --------- | ------------- |
| `table(String table)` | `UpdateBuilder` | Set target table |
| `set(String col, Object val)` | `UpdateBuilder` | Add a SET pair |
| `whereEquals(col, val)` | `UpdateBuilder` | `WHERE col = ?` (AND) |
| `orWhereEquals(col, val)` | `UpdateBuilder` | `WHERE col = ?` (OR) |
| `whereGreaterThanOrEquals(col, int val)` | `UpdateBuilder` | `WHERE col >= ?` (AND) |
| `build()` | `SqlResult` | Render with standard dialect |
| `build(SqlDialect)` | `SqlResult` | Render with specified dialect |
---
### `DeleteBuilder`
| Method | Returns | Description |
| -------- | --------- | ------------- |
| `from(String table)` | `DeleteBuilder` | Set target table |
| `whereEquals(col, val)` | `DeleteBuilder` | `WHERE col = ?` (AND) |
| `whereNotEquals(col, val)` | `DeleteBuilder` | `WHERE col != ?` (AND) |
| `whereGreaterThan(col, val)` | `DeleteBuilder` | `WHERE col > ?` (AND) |
| `whereGreaterThanOrEquals(col, val)` | `DeleteBuilder` | `WHERE col >= ?` (AND) |
| `whereLessThan(col, val)` | `DeleteBuilder` | `WHERE col < ?` (AND) |
| `whereLessThanOrEquals(col, val)` | `DeleteBuilder` | `WHERE col )` | `DeleteBuilder` | `WHERE col NOT IN (...)` (AND); throws `IllegalArgumentException` if list is null/empty |
| `whereBetween(col, from, to)` | `DeleteBuilder` | `WHERE col BETWEEN ? AND ?` (AND) |
| `withDefaults(QueryBuilderDefaults)` | `DeleteBuilder` | Set per-instance configuration defaults; throws `NullPointerException` if `null` |
| `build()` | `SqlResult` | Render with standard dialect |
| `build(SqlDialect)` | `SqlResult` | Render with specified dialect |
---
### `CreateBuilder`
| Method | Returns | Description |
| -------- | --------- | ------------- |
| `table(String name)` | `CreateBuilder` | Set table name |
| `column(String name, String sqlType)` | `CreateBuilder` | Add column definition |
| `primaryKey(String name)` | `CreateBuilder` | Declare a primary key column |
| `ifNotExists()` | `CreateBuilder` | Add `IF NOT EXISTS` |
| `build()` | `SqlResult` | Render; throws `IllegalStateException` if table or columns are missing |
| `build(SqlDialect)` | `SqlResult` | Render with specified dialect |
---
## condition
### `Operator`
Enum of comparison operators. See [Conditions](conditions) for the full table.
| Constant | SQL |
| ---------- | ----- |
| `EQ` | `= ?` |
| `NEQ` | `!= ?` |
| `GT` | `> ?` |
| `GTE` | `>= ?` |
| `LT` | `< ?` |
| `LTE` | `