Skip to main content
Version: 5.9

RunQueryBuilder <T>

Hierarchy

  • Omit<QueryBuilder<T>, getResult | getSingleResult | getResultList | where>
    • RunQueryBuilder
      • InsertQueryBuilder
      • UpdateQueryBuilder
      • DeleteQueryBuilder
      • TruncateQueryBuilder

Index

Properties

alias

alias: string

helper

helper: QueryBuilderHelper

mainAlias

mainAlias: Alias<T>

Methods

[custom]

  • [custom](depth: number): string
  • Parameters

    • depth: number

    Returns string

addSelect

  • addSelect(fields: Field<T> | Field<T>[]): SelectQueryBuilder<T>
  • Parameters

    • fields: Field<T> | Field<T>[]

    Returns SelectQueryBuilder<T>

andWhere

  • andWhere(cond: QBFilterQuery<T>): QueryBuilder<T>
  • andWhere(cond: string, params?: any[]): QueryBuilder<T>
  • Parameters

    • cond: QBFilterQuery<T>

    Returns QueryBuilder<T>

as

  • as(alias: string): QueryBuilder<any, any>
  • Returns knex instance with sub-query aliased with given alias. You can provide EntityName.propName as alias, then the field name will be used based on the metadata


    Parameters

    • alias: string

    Returns QueryBuilder<any, any>

cache

  • cache(config?: number | boolean | [string, number]): QueryBuilder<T>
  • Parameters

    • config: number | boolean | [string, number] = true

    Returns QueryBuilder<T>

clone

  • clone(): QueryBuilder<T>
  • Returns QueryBuilder<T>

comment

  • comment(comment: string | string[]): QueryBuilder<T>
  • Prepend comment to the sql query using the syntax /* ... *&#8205;/. Some characters are forbidden such as /*, *&#8205;/ and ?.


    Parameters

    • comment: string | string[]

    Returns QueryBuilder<T>

count

  • count(field?: string | string[], distinct?: boolean): CountQueryBuilder<T>
  • Parameters

    • optionalfield: string | string[]
    • distinct: boolean = false

    Returns CountQueryBuilder<T>

delete

  • delete(cond?: QBFilterQuery): DeleteQueryBuilder<T>
  • Parameters

    • optionalcond: QBFilterQuery

    Returns DeleteQueryBuilder<T>

distinct

  • distinct(): SelectQueryBuilder<T>
  • Returns SelectQueryBuilder<T>

distinctOn

  • distinctOn(fields: string | string[]): SelectQueryBuilder<T>
  • postgres only


    Parameters

    • fields: string | string[]

    Returns SelectQueryBuilder<T>

execute

  • execute<U>(method?: get | all | run, mapResults?: boolean): Promise<U>
  • Type parameters

    • U = QueryResult<T>

    Parameters

    • optionalmethod: get | all | run
    • optionalmapResults: boolean

    Returns Promise<U>

from

  • from<T>(target: QueryBuilder<T>, aliasName?: string): QueryBuilder<T>
  • from<T>(target: EntityName<T>): QueryBuilder<T>
  • Specifies FROM which entity's table select/update/delete will be executed, removing all previously set FROM-s. Allows setting a main string alias of the selection data.


    Type parameters

    • T: Partial<T> = Partial<any>

    Parameters

    • target: QueryBuilder<T>
    • optionalaliasName: string

    Returns QueryBuilder<T>

getCount

  • getCount(field?: string | string[], distinct?: boolean): Promise<number>
  • Executes count query (without offset and limit), returning total count of results


    Parameters

    • optionalfield: string | string[]
    • optionaldistinct: boolean

    Returns Promise<number>

getFormattedQuery

  • getFormattedQuery(): string
  • Returns raw interpolated query string with all the parameters inlined.


    Returns string

getKnex

  • getKnex(): QueryBuilder<any, any>
  • Returns QueryBuilder<any, any>

getKnexQuery

  • getKnexQuery(): QueryBuilder<any, any>
  • Returns QueryBuilder<any, any>

getParams

  • getParams(): readonly Value[]
  • Returns the list of all parameters for this query.


    Returns readonly Value[]

getQuery

  • getQuery(): string
  • Returns the query with parameters as wildcards.


    Returns string

getResultAndCount

  • getResultAndCount(): Promise<[T[], number]>
  • Executes the query, returning both array of results and total count query (without offset and limit).


    Returns Promise<[T[], number]>

groupBy

  • groupBy(fields: string | keyof T | readonly (string | keyof T)[]): QueryBuilder<T>
  • Parameters

    • fields: string | keyof T | readonly (string | keyof T)[]

    Returns QueryBuilder<T>

having

  • having(cond?: string | QBFilterQuery, params?: any[]): QueryBuilder<T>
  • Parameters

    • cond: string | QBFilterQuery = {}
    • optionalparams: any[]

    Returns QueryBuilder<T>

hintComment

  • hintComment(comment: string | string[]): QueryBuilder<T>
  • Add hints to the query using comment-like syntax /*+ ... *&#8205;/. MySQL and Oracle use this syntax for optimizer hints. Also various DB proxies and routers use this syntax to pass hints to alter their behavior. In other dialects the hints are ignored as simple comments.


    Parameters

    • comment: string | string[]

    Returns QueryBuilder<T>

ignore

  • ignore(): QueryBuilder<T>
  • Returns QueryBuilder<T>

indexHint

  • indexHint(sql: string): QueryBuilder<T>
  • Adds index hint to the FROM clause.


    Parameters

    • sql: string

    Returns QueryBuilder<T>

innerJoinAndSelect

  • innerJoinAndSelect(field: string, alias: string, cond?: QBFilterQuery, fields?: string[]): SelectQueryBuilder<T>
  • Parameters

    • field: string
    • alias: string
    • cond: QBFilterQuery = {}
    • optionalfields: string[]

    Returns SelectQueryBuilder<T>

insert

  • insert(data: RequiredEntityData<T> | RequiredEntityData<T>[]): InsertQueryBuilder<T>
  • Parameters

    • data: RequiredEntityData<T> | RequiredEntityData<T>[]

    Returns InsertQueryBuilder<T>

join

  • join(field: string, alias: string, cond?: QBFilterQuery, type?: leftJoin | innerJoin | pivotJoin, path?: string): QueryBuilder<T>
  • Parameters

    • field: string
    • alias: string
    • cond: QBFilterQuery = {}
    • type: leftJoin | innerJoin | pivotJoin = 'innerJoin'
    • optionalpath: string

    Returns QueryBuilder<T>

joinAndSelect

  • joinAndSelect(field: string, alias: string, cond?: QBFilterQuery, type?: leftJoin | innerJoin | pivotJoin, path?: string, fields?: string[]): SelectQueryBuilder<T>
  • Parameters

    • field: string
    • alias: string
    • cond: QBFilterQuery = {}
    • type: leftJoin | innerJoin | pivotJoin = 'innerJoin'
    • optionalpath: string
    • optionalfields: string[]

    Returns SelectQueryBuilder<T>

leftJoin

  • leftJoin(field: string, alias: string, cond?: QBFilterQuery): QueryBuilder<T>
  • Parameters

    • field: string
    • alias: string
    • cond: QBFilterQuery = {}

    Returns QueryBuilder<T>

leftJoinAndSelect

  • leftJoinAndSelect(field: string, alias: string, cond?: QBFilterQuery, fields?: string[]): SelectQueryBuilder<T>
  • Parameters

    • field: string
    • alias: string
    • cond: QBFilterQuery = {}
    • optionalfields: string[]

    Returns SelectQueryBuilder<T>

limit

  • limit(limit?: number, offset?: number): QueryBuilder<T>
  • Parameters

    • optionallimit: number
    • offset: number = 0

    Returns QueryBuilder<T>

merge

  • merge(data?: Field<T>[] | EntityData<T>): QueryBuilder<T>
  • Parameters

    • optionaldata: Field<T>[] | EntityData<T>

    Returns QueryBuilder<T>

offset

  • offset(offset?: number): QueryBuilder<T>
  • Parameters

    • optionaloffset: number

    Returns QueryBuilder<T>

onConflict

  • onConflict(fields?: Field<T> | Field<T>[]): QueryBuilder<T>
  • Parameters

    • fields: Field<T> | Field<T>[] = []

    Returns QueryBuilder<T>

orWhere

  • orWhere(cond: QBFilterQuery<T>): QueryBuilder<T>
  • orWhere(cond: string, params?: any[]): QueryBuilder<T>
  • Parameters

    • cond: QBFilterQuery<T>

    Returns QueryBuilder<T>

orderBy

  • orderBy(orderBy: QBQueryOrderMap<T> | QBQueryOrderMap<T>[]): QueryBuilder<T>
  • Parameters

    • orderBy: QBQueryOrderMap<T> | QBQueryOrderMap<T>[]

    Returns QueryBuilder<T>

raw

  • raw<R>(sql: string, bindings?: ValueDict | RawBinding[]): R
  • Type parameters

    • R = Raw<any>

    Parameters

    • sql: string
    • bindings: ValueDict | RawBinding[] = []

    Returns R

returning

  • returning(fields?: Field<T> | Field<T>[]): QueryBuilder<T>
  • Parameters

    • optionalfields: Field<T> | Field<T>[]

    Returns QueryBuilder<T>

select

  • select(fields: Field<T> | Field<T>[], distinct?: boolean): SelectQueryBuilder<T>
  • Parameters

    • fields: Field<T> | Field<T>[]
    • distinct: boolean = false

    Returns SelectQueryBuilder<T>

setFlag

  • setFlag(flag: QueryFlag): QueryBuilder<T>
  • Parameters

    • flag: QueryFlag

    Returns QueryBuilder<T>

setFlushMode

  • setFlushMode(flushMode?: FlushMode): QueryBuilder<T>
  • Parameters

    • optionalflushMode: FlushMode

    Returns QueryBuilder<T>

setLockMode

  • setLockMode(mode?: LockMode, tables?: string[]): QueryBuilder<T>
  • Parameters

    • optionalmode: LockMode
    • optionaltables: string[]

    Returns QueryBuilder<T>

then

  • then<TResult1, TResult2>(onfulfilled?: null | (value: QueryResult<T>) => TResult1 | PromiseLike<TResult1>, onrejected?: null | (reason: any) => TResult2 | PromiseLike<TResult2>): Promise<QueryResult<T>>
  • Type parameters

    • TResult1 = QueryResult<T>
    • TResult2 = never

    Parameters

    • optionalonfulfilled: null | (value: QueryResult<T>) => TResult1 | PromiseLike<TResult1>
      • optionalonrejected: null | (reason: any) => TResult2 | PromiseLike<TResult2>

        Returns Promise<QueryResult<T>>

      truncate

      • truncate(): TruncateQueryBuilder<T>
      • Returns TruncateQueryBuilder<T>

      unsetFlag

      • unsetFlag(flag: QueryFlag): QueryBuilder<T>
      • Parameters

        • flag: QueryFlag

        Returns QueryBuilder<T>

      update

      • update(data: EntityData<T>): UpdateQueryBuilder<T>
      • Parameters

        • data: EntityData<T>

        Returns UpdateQueryBuilder<T>

      where

      • where(cond: string | QBFilterQuery<T>, params?: any[] | $and | $or, operator?: $and | $or): RunQueryBuilder<T>
      • Parameters

        • cond: string | QBFilterQuery<T>
        • optionalparams: any[] | $and | $or
        • optionaloperator: $and | $or

        Returns RunQueryBuilder<T>

      withSchema

      • withSchema(schema?: string): QueryBuilder<T>
      • Parameters

        • optionalschema: string

        Returns QueryBuilder<T>

      withSubQuery

      • withSubQuery(subQuery: QueryBuilder<any, any>, alias: string): QueryBuilder<T>
      • Parameters

        • subQuery: QueryBuilder<any, any>
        • alias: string

        Returns QueryBuilder<T>