CaseWhenBuilder
class CaseWhenBuilder<DB, TB extends keyof DB, W, O> implements Whenable<DB, TB, W, O>, Endable<DB, TB, O | null> {}
constructor(props: CaseBuilderProps);
else<E extends Expression<unknown>>(expression: E): CaseEndBuilder<DB, TB, O | ExtractTypeFromValueExpression<E>>;
end(): ExpressionWrapper<DB, TB, O | null>;
endCase(): ExpressionWrapper<DB, TB, O | null>;
when<RE extends ReferenceExpression<DB, TB>, VE extends OperandValueExpressionOrList<DB, TB, RE>>(
lhs: unknown extends W ? RE : KyselyTypeError<"when(lhs, op, rhs) is not supported when using case(value)">,
rhs: VE,
): CaseThenBuilder<DB, TB, W, O>;when(value: unknown extends W ? KyselyTypeError<"when(value) is only supported when using case(value)"> : W): CaseThenBuilder<DB, TB, W, O>;
§Methods
§
else<E extends Expression<unknown>>(expression: E): CaseEndBuilder<DB, TB, O | ExtractTypeFromValueExpression<E>>
[src]Adds an else
clause to the case
statement.
An else
call must be followed by an {@link Endable.end} or {@link Endable.endCase} call.
§
end(): ExpressionWrapper<DB, TB, O | null>
[src]Adds an end
keyword to the case operator.
case
operators can only be used as part of a query.
For a case
statement used as part of a stored program, use {@link endCase} instead.
§
endCase(): ExpressionWrapper<DB, TB, O | null>
[src]Adds end case
keywords to the case statement.
case
statements can only be used for flow control in stored programs.
For a case
operator used as part of a query, use {@link end} instead.
§
when<RE extends ReferenceExpression<DB, TB>, VE extends OperandValueExpressionOrList<DB, TB, RE>>(lhs: unknown extends W ? RE : KyselyTypeError<"when(lhs, op, rhs) is not supported when using case(value)">, op: ComparisonOperatorExpression, rhs: VE): CaseThenBuilder<DB, TB, W, O>
[src]Adds a when
clause to the case statement.
A when
call must be followed by a CaseThenBuilder.then call.
when(expression: Expression<W>): CaseThenBuilder<DB, TB, W, O>
[src]when(value: unknown extends W ? KyselyTypeError<"when(value) is only supported when using case(value)"> : W): CaseThenBuilder<DB, TB, W, O>
[src]