Skip to content
# Class: QueryBuilder

Defined in: packages/core/src/transformers/QueryBuilder.ts:24

QueryBuilder provides static methods to build or convert various SQL query objects.

Methods ​

buildBinaryQuery() ​

static buildBinaryQuery(queries, operator): BinarySelectQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:32

Builds a BinarySelectQuery by combining an array of SelectQuery using the specified operator. Throws if less than two queries are provided.

Parameters ​

queries ​

SelectQuery[]

Array of SelectQuery to combine

operator ​

string

SQL operator to use (e.g. 'union', 'union all', 'intersect', 'except')

Returns ​

BinarySelectQuery

BinarySelectQuery


buildSimpleQuery() ​

static buildSimpleQuery(query): SimpleSelectQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:63

Converts a SELECT query to a standard SimpleSelectQuery form.

Parameters ​

query ​

SelectQuery

The query to convert

Returns ​

SimpleSelectQuery

A SimpleSelectQuery


buildCreateTableQuery() ​

static buildCreateTableQuery(query, tableName, isTemporary, ifNotExists): CreateTableQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:220

Converts a SELECT query to a CREATE TABLE query (CREATE [TEMPORARY] TABLE ... AS SELECT ...)

Parameters ​

query ​

SelectQuery

The SELECT query to use as the source

tableName ​

string

The name of the table to create

isTemporary ​

boolean = false

If true, creates a temporary table

ifNotExists ​

boolean = false

Returns ​

CreateTableQuery

A CreateTableQuery instance


buildInsertQuery() ​

static buildInsertQuery(selectQuery, targetOrOptions, explicitColumns?): InsertQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:232

Converts a SELECT query to an INSERT query (INSERT INTO ... SELECT ...).

Parameters ​

selectQuery ​

SimpleSelectQuery

targetOrOptions ​

string | InsertQueryConversionOptions

explicitColumns? ​

string[]

Returns ​

InsertQuery


convertInsertValuesToSelect() ​

static convertInsertValuesToSelect(insertQuery): InsertQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:250

Converts an INSERT ... VALUES query into INSERT ... SELECT form using UNION ALL.

Parameters ​

insertQuery ​

InsertQuery

The VALUES-based InsertQuery to convert.

Returns ​

InsertQuery

A new InsertQuery that selects rows instead of using VALUES.


convertInsertSelectToValues() ​

static convertInsertSelectToValues(insertQuery): InsertQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:259

Converts an INSERT ... SELECT (optionally with UNION ALL) into INSERT ... VALUES form.

Parameters ​

insertQuery ​

InsertQuery

The SELECT-based InsertQuery to convert.

Returns ​

InsertQuery

A new InsertQuery that uses VALUES tuples.


convertInsertToReturningSelect() ​

static convertInsertToReturningSelect(insertQuery, options?): SimpleSelectQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:266

Builds a SELECT query that reflects the INSERT's RETURNING output (or count when RETURNING is absent).

Parameters ​

insertQuery ​

InsertQuery

options? ​

InsertResultSelectOptions

Returns ​

SimpleSelectQuery


convertUpdateToReturningSelect() ​

static convertUpdateToReturningSelect(updateQuery, options?): SimpleSelectQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:273

Parameters ​

updateQuery ​

UpdateQuery

options? ​

UpdateResultSelectOptions

Returns ​

SimpleSelectQuery


convertDeleteToReturningSelect() ​

static convertDeleteToReturningSelect(deleteQuery, options?): SimpleSelectQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:280

Parameters ​

deleteQuery ​

DeleteQuery

options? ​

DeleteResultSelectOptions

Returns ​

SimpleSelectQuery


convertMergeToReturningSelect() ​

static convertMergeToReturningSelect(mergeQuery, options?): SimpleSelectQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:287

Parameters ​

mergeQuery ​

MergeQuery

options? ​

MergeResultSelectOptions

Returns ​

SimpleSelectQuery


buildUpdateQuery() ​

static buildUpdateQuery(selectQuery, selectSourceOrOptions, updateTableExprRaw?, primaryKeys?): UpdateQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:297

Builds an UPDATE query from a SELECT query and conversion options.

Parameters ​

selectQuery ​

SimpleSelectQuery

selectSourceOrOptions ​

string | UpdateQueryConversionOptions

updateTableExprRaw? ​

string

primaryKeys? ​

string | string[]

Returns ​

UpdateQuery


buildDeleteQuery() ​

static buildDeleteQuery(selectQuery, options): DeleteQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:332

Builds a DELETE query that deletes the rows matched by the SELECT query output.

Parameters ​

selectQuery ​

SimpleSelectQuery

options ​

DeleteQueryConversionOptions

Returns ​

DeleteQuery


buildMergeQuery() ​

static buildMergeQuery(selectQuery, options): MergeQuery

Defined in: packages/core/src/transformers/QueryBuilder.ts:365

Builds a MERGE query (upsert) that coordinates actions based on row matches.

Parameters ​

selectQuery ​

SimpleSelectQuery

options ​

MergeQueryConversionOptions

Returns ​

MergeQuery

Released under the MIT License.