Interface SQLBuilderPort

interface SQLBuilderPort {
    column(name: SQLBuilderField): this;
    column(name: SQLBuilderField, as: string): this;
    from(name: string): this;
    from(name: string, as: string): this;
    groupBy(column: SQLBuilderField): this;
    having(field: SQLBuilderField, value: SQLBuilderConditionValue): this;
    having(
        field: SQLBuilderField,
        operator: SQLBuilderOperator,
        value: SQLBuilderConditionValue,
    ): this;
    join(
        direction: SQLBuilderJoinDirection,
        table_name: string,
        condition: string,
    ): this;
    join(
        direction: SQLBuilderJoinDirection,
        table_name: string,
        as: string,
        condition: string,
    ): this;
    leftJoin(table_name: string, condition: string): this;
    leftJoin(table_name: string, as: string, condition: string): this;
    limit(value: number): this;
    offset(value: number): this;
    orderBy(column: SQLBuilderField, order: SQLBuilderOrderDirection): this;
    toSQL(
        options?: SQLBuilderToSQLInputOptions,
    ): [string, SQLBuilderBindingValue[]];
    where(field: SQLBuilderField, value: SQLBuilderConditionValue): this;
    where(
        field: SQLBuilderField,
        value: SQLBuilderConditionExpressionPort,
    ): this;
    where(
        field: SQLBuilderField,
        operator: SQLBuilderOperator,
        value: SQLBuilderConditionValue,
    ): this;
    where(
        field: SQLBuilderField,
        operator: SQLBuilderOperator,
        value: SQLBuilderConditionExpressionPort,
    ): this;
    where(conditions: SQLBuilderConditionsPort): this;
}

Implemented by

Methods

  • Specified table name.

    builder.from('users')
    // FROM `users`

    Parameters

    • name: string

    Returns this

  • Specified table name with alias.

    builder.from('users', 'u')
    // FROM `users` AS `u`

    Parameters

    • name: string
    • as: string

    Returns this

  • Specified join.

    Parameters

    • direction: SQLBuilderJoinDirection
    • table_name: string
    • condition: string

    Returns this

  • Specified join with direction.

    Parameters

    • direction: SQLBuilderJoinDirection
    • table_name: string
    • as: string
    • condition: string

    Returns this

  • Sepcified left join

    builder.leftJoin('passport', 'passport.id = user.passport_id')
    // LEFT JOIN `passport` ON passport.id = user.passport_id

    Parameters

    • table_name: string
    • condition: string

    Returns this

  • Specified left join with table alias.

    builder.leftJoin('passport', 'p', 'p.id = user.passport_id')
    // LEFT JOIN `passport` AS `p` ON p.id = user.passport_id

    Parameters

    • table_name: string
    • as: string
    • condition: string

    Returns this

  • Specified limit value.

    builder.limit(1)
    

    Parameters

    • value: number

    Returns this

  • Specified offset value.

    builder.offset(1)
    

    Parameters

    • value: number

    Returns this