본문으로 건너뛰기

함수: caseWhen()

호출 시그니처​

function caseWhen<C1, V1>(condition1, value1): CaseWhenResult<[V1], false>;

정의 위치: packages/db/src/query/builder/functions.ts:399

SQL의 CASE WHEN와 유사하게, 처음으로 일치하는 조건의 값을 반환합니다.

인수는 조건/값 쌍으로 평가된 후 선택적 기본값이 이어집니다. 스칼라 분기 값은 쿼리 표현식을 반환하며 다음과 같은 표현식 컨텍스트에서 사용할 수 있습니다: select, where, orderBy, groupBy와 같은 표현식 컨텍스트에서 having 및 동등 조인 피연산자에 사용됩니다. 스칼라 분기와 일치하는 항목이 없고 기본값이 제공되지 않으면 결과는 null입니다.

분기 값이 프로젝션 객체인 경우 caseWhen는 선택 전용 프로젝션 값이 됩니다. 프로젝션 분기에는 중첩 필드, ref 스프레드, include를 포함할 수 있습니다. 일치하는 프로젝션 분기가 없고 기본값이 제공되지 않으면 결과는 undefined입니다.

타입 매개변수​

C1​

C1 extends ExpressionLike

V1​

V1 extends CaseWhenValue

매개변수​

condition1​

C1

value1​

V1

반환값​

CaseWhenResult&lt;[V1], false>

예시​

caseWhen(gt(user.age, 18), `adult`, `minor`)
caseWhen(
gt(user.age, 65),
`senior`,
gt(user.age, 18),
`adult`,
`minor`,
)
caseWhen(gt(user.age, 18), {
...user,
posts: q
.from({ post: postsCollection })
.where(({ post }) => eq(post.userId, user.id)),
})

호출 시그니처​

function caseWhen<C1, V1, D>(
condition1,
value1,
defaultValue): CaseWhenResult<[V1, D], true>;

정의 위치: packages/db/src/query/builder/functions.ts:403

SQL의 CASE WHEN와 유사하게, 처음으로 일치하는 조건의 값을 반환합니다.

인수는 조건/값 쌍으로 평가된 후 선택적 기본값이 이어집니다. 스칼라 분기 값은 쿼리 표현식을 반환하며 다음과 같은 표현식 컨텍스트에서 사용할 수 있습니다: select, where, orderBy, groupBy와 같은 표현식 컨텍스트에서 having 및 동등 조인 피연산자에 사용됩니다. 스칼라 분기와 일치하는 항목이 없고 기본값이 제공되지 않으면 결과는 null입니다.

분기 값이 프로젝션 객체인 경우 caseWhen는 선택 전용 프로젝션 값이 됩니다. 프로젝션 분기에는 중첩 필드, ref 스프레드, include를 포함할 수 있습니다. 일치하는 프로젝션 분기가 없고 기본값이 제공되지 않으면 결과는 undefined입니다.

타입 매개변수​

C1​

C1 extends ExpressionLike

V1​

V1 extends CaseWhenValue

D​

D extends CaseWhenValue

매개변수​

condition1​

C1

value1​

V1

defaultValue​

D

반환값​

CaseWhenResult&lt;[V1, D], true>

예시​

caseWhen(gt(user.age, 18), `adult`, `minor`)
caseWhen(
gt(user.age, 65),
`senior`,
gt(user.age, 18),
`adult`,
`minor`,
)
caseWhen(gt(user.age, 18), {
...user,
posts: q
.from({ post: postsCollection })
.where(({ post }) => eq(post.userId, user.id)),
})

호출 시그니처​

function caseWhen<C1, V1, C2, V2>(
condition1,
value1,
condition2,
value2): CaseWhenResult<[V1, V2], false>;

정의 위치: packages/db/src/query/builder/functions.ts:408

SQL의 CASE WHEN와 유사하게, 처음으로 일치하는 조건의 값을 반환합니다.

인수는 조건/값 쌍으로 평가된 후 선택적 기본값이 이어집니다. 스칼라 분기 값은 쿼리 표현식을 반환하며 다음과 같은 표현식 컨텍스트에서 사용할 수 있습니다: select, where, orderBy, groupBy와 같은 표현식 컨텍스트에서 having 및 동등 조인 피연산자에 사용됩니다. 스칼라 분기와 일치하는 항목이 없고 기본값이 제공되지 않으면 결과는 null입니다.

분기 값이 프로젝션 객체인 경우 caseWhen는 선택 전용 프로젝션 값이 됩니다. 프로젝션 분기에는 중첩 필드, ref 스프레드, include를 포함할 수 있습니다. 일치하는 프로젝션 분기가 없고 기본값이 제공되지 않으면 결과는 undefined입니다.

타입 매개변수​

C1​

C1 extends ExpressionLike

V1​

V1 extends CaseWhenValue

C2​

C2 extends ExpressionLike

V2​

V2 extends CaseWhenValue

매개변수​

condition1​

C1

value1​

V1

condition2​

C2

value2​

V2

반환값​

CaseWhenResult&lt;[V1, V2], false>

예시​

caseWhen(gt(user.age, 18), `adult`, `minor`)
caseWhen(
gt(user.age, 65),
`senior`,
gt(user.age, 18),
`adult`,
`minor`,
)
caseWhen(gt(user.age, 18), {
...user,
posts: q
.from({ post: postsCollection })
.where(({ post }) => eq(post.userId, user.id)),
})

호출 시그니처​

function caseWhen<C1, V1, C2, V2, D>(
condition1,
value1,
condition2,
value2,
defaultValue): CaseWhenResult<[V1, V2, D], true>;

정의 위치: packages/db/src/query/builder/functions.ts:419

SQL의 CASE WHEN와 유사하게, 처음으로 일치하는 조건의 값을 반환합니다.

인수는 조건/값 쌍으로 평가된 후 선택적 기본값이 이어집니다. 스칼라 분기 값은 쿼리 표현식을 반환하며 다음과 같은 표현식 컨텍스트에서 사용할 수 있습니다: select, where, orderBy, groupBy와 같은 표현식 컨텍스트에서 having 및 동등 조인 피연산자에 사용됩니다. 스칼라 분기와 일치하는 항목이 없고 기본값이 제공되지 않으면 결과는 null입니다.

분기 값이 프로젝션 객체인 경우 caseWhen는 선택 전용 프로젝션 값이 됩니다. 프로젝션 분기에는 중첩 필드, ref 스프레드, include를 포함할 수 있습니다. 일치하는 프로젝션 분기가 없고 기본값이 제공되지 않으면 결과는 undefined입니다.

타입 매개변수​

C1​

C1 extends ExpressionLike

V1​

V1 extends CaseWhenValue

C2​

C2 extends ExpressionLike

V2​

V2 extends CaseWhenValue

D​

D extends CaseWhenValue

매개변수​

condition1​

C1

value1​

V1

condition2​

C2

value2​

V2

defaultValue​

D

반환값​

CaseWhenResult&lt;[V1, V2, D], true>

예시​

caseWhen(gt(user.age, 18), `adult`, `minor`)
caseWhen(
gt(user.age, 65),
`senior`,
gt(user.age, 18),
`adult`,
`minor`,
)
caseWhen(gt(user.age, 18), {
...user,
posts: q
.from({ post: postsCollection })
.where(({ post }) => eq(post.userId, user.id)),
})

호출 시그니처​

function caseWhen<C1, V1, C2, V2, C3, V3>(
condition1,
value1,
condition2,
value2,
condition3,
value3): CaseWhenResult<[V1, V2, V3], false>;

정의 위치: packages/db/src/query/builder/functions.ts:432

SQL의 CASE WHEN와 유사하게, 처음으로 일치하는 조건의 값을 반환합니다.

인수는 조건/값 쌍으로 평가된 후 선택적 기본값이 이어집니다. 스칼라 분기 값은 쿼리 표현식을 반환하며 다음과 같은 표현식 컨텍스트에서 사용할 수 있습니다: select, where, orderBy, groupBy와 같은 표현식 컨텍스트에서 having 및 동등 조인 피연산자에 사용됩니다. 스칼라 분기와 일치하는 항목이 없고 기본값이 제공되지 않으면 결과는 null입니다.

분기 값이 프로젝션 객체인 경우 caseWhen는 선택 전용 프로젝션 값이 됩니다. 프로젝션 분기에는 중첩 필드, ref 스프레드, include를 포함할 수 있습니다. 일치하는 프로젝션 분기가 없고 기본값이 제공되지 않으면 결과는 undefined입니다.

타입 매개변수​

C1​

C1 extends ExpressionLike

V1​

V1 extends CaseWhenValue

C2​

C2 extends ExpressionLike

V2​

V2 extends CaseWhenValue

C3​

C3 extends ExpressionLike

V3​

V3 extends CaseWhenValue

매개변수​

condition1​

C1

value1​

V1

condition2​

C2

value2​

V2

condition3​

C3

value3​

V3

반환값​

CaseWhenResult&lt;[V1, V2, V3], false>

예시​

caseWhen(gt(user.age, 18), `adult`, `minor`)
caseWhen(
gt(user.age, 65),
`senior`,
gt(user.age, 18),
`adult`,
`minor`,
)
caseWhen(gt(user.age, 18), {
...user,
posts: q
.from({ post: postsCollection })
.where(({ post }) => eq(post.userId, user.id)),
})

호출 시그니처​

function caseWhen<C1, V1, C2, V2, C3, V3, D>(
condition1,
value1,
condition2,
value2,
condition3,
value3,
defaultValue): CaseWhenResult<[V1, V2, V3, D], true>;

정의 위치: packages/db/src/query/builder/functions.ts:447

SQL의 CASE WHEN와 유사하게, 처음으로 일치하는 조건의 값을 반환합니다.

인수는 조건/값 쌍으로 평가된 후 선택적 기본값이 이어집니다. 스칼라 분기 값은 쿼리 표현식을 반환하며 다음과 같은 표현식 컨텍스트에서 사용할 수 있습니다: select, where, orderBy, groupBy와 같은 표현식 컨텍스트에서 having 및 동등 조인 피연산자에 사용됩니다. 스칼라 분기와 일치하는 항목이 없고 기본값이 제공되지 않으면 결과는 null입니다.

분기 값이 프로젝션 객체인 경우 caseWhen는 선택 전용 프로젝션 값이 됩니다. 프로젝션 분기에는 중첩 필드, ref 스프레드, include를 포함할 수 있습니다. 일치하는 프로젝션 분기가 없고 기본값이 제공되지 않으면 결과는 undefined입니다.

타입 매개변수​

C1​

C1 extends ExpressionLike

V1​

V1 extends CaseWhenValue

C2​

C2 extends ExpressionLike

V2​

V2 extends CaseWhenValue

C3​

C3 extends ExpressionLike

V3​

V3 extends CaseWhenValue

D​

D extends CaseWhenValue

매개변수​

condition1​

C1

value1​

V1

condition2​

C2

value2​

V2

condition3​

C3

value3​

V3

defaultValue​

D

반환값​

CaseWhenResult&lt;[V1, V2, V3, D], true>

예시​

caseWhen(gt(user.age, 18), `adult`, `minor`)
caseWhen(
gt(user.age, 65),
`senior`,
gt(user.age, 18),
`adult`,
`minor`,
)
caseWhen(gt(user.age, 18), {
...user,
posts: q
.from({ post: postsCollection })
.where(({ post }) => eq(post.userId, user.id)),
})

호출 시그니처​

function caseWhen<C1, V1, C2, V2, C3, V3, C4, V4>(
condition1,
value1,
condition2,
value2,
condition3,
value3,
condition4,
value4): CaseWhenResult<[V1, V2, V3, V4], false>;

정의 위치: packages/db/src/query/builder/functions.ts:464

SQL의 CASE WHEN와 유사하게, 처음으로 일치하는 조건의 값을 반환합니다.

인수는 조건/값 쌍으로 평가된 후 선택적 기본값이 이어집니다. 스칼라 분기 값은 쿼리 표현식을 반환하며 다음과 같은 표현식 컨텍스트에서 사용할 수 있습니다: select, where, orderBy, groupBy와 같은 표현식 컨텍스트에서 having 및 동등 조인 피연산자에 사용됩니다. 스칼라 분기와 일치하는 항목이 없고 기본값이 제공되지 않으면 결과는 null입니다.

분기 값이 프로젝션 객체인 경우 caseWhen는 선택 전용 프로젝션 값이 됩니다. 프로젝션 분기에는 중첩 필드, ref 스프레드, include를 포함할 수 있습니다. 일치하는 프로젝션 분기가 없고 기본값이 제공되지 않으면 결과는 undefined입니다.

타입 매개변수​

C1​

C1 extends ExpressionLike

V1​

V1 extends CaseWhenValue

C2​

C2 extends ExpressionLike

V2​

V2 extends CaseWhenValue

C3​

C3 extends ExpressionLike

V3​

V3 extends CaseWhenValue

C4​

C4 extends ExpressionLike

V4​

V4 extends CaseWhenValue

매개변수​

condition1​

C1

value1​

V1

condition2​

C2

value2​

V2

condition3​

C3

value3​

V3

condition4​

C4

value4​

V4

반환값​

CaseWhenResult&lt;[V1, V2, V3, V4], false>

예시​

caseWhen(gt(user.age, 18), `adult`, `minor`)
caseWhen(
gt(user.age, 65),
`senior`,
gt(user.age, 18),
`adult`,
`minor`,
)
caseWhen(gt(user.age, 18), {
...user,
posts: q
.from({ post: postsCollection })
.where(({ post }) => eq(post.userId, user.id)),
})

호출 시그니처​

function caseWhen<C1, V1, C2, V2, C3, V3, C4, V4, D>(
condition1,
value1,
condition2,
value2,
condition3,
value3,
condition4,
value4,
defaultValue): CaseWhenResult<[V1, V2, V3, V4, D], true>;

정의 위치: packages/db/src/query/builder/functions.ts:483

SQL의 CASE WHEN와 유사하게, 처음으로 일치하는 조건의 값을 반환합니다.

인수는 조건/값 쌍으로 평가된 후 선택적 기본값이 이어집니다. 스칼라 분기 값은 쿼리 표현식을 반환하며 다음과 같은 표현식 컨텍스트에서 사용할 수 있습니다: select, where, orderBy, groupBy와 같은 표현식 컨텍스트에서 having 및 동등 조인 피연산자에 사용됩니다. 스칼라 분기와 일치하는 항목이 없고 기본값이 제공되면 결과는 null입니다.

브랜치 값이 프로젝션 객체인 경우 caseWhen은 select 전용 프로젝션 값이 됩니다. 프로젝션 브랜치에는 중첩 필드, ref 스프레드, include를 포함할 수 있습니다. 일치하는 프로젝션 브랜치가 없고 기본값도 제공되지 않으면 결과는 undefined입니다.

타입 매개변수​

C1​

C1 확장합니다 ExpressionLike

V1​

V1 확장합니다 CaseWhenValue

C2​

C2 확장합니다 ExpressionLike

V2​

V2 확장합니다 CaseWhenValue

C3​

C3 확장합니다 ExpressionLike

V3​

V3 확장합니다 CaseWhenValue

C4​

C4 확장합니다 ExpressionLike

V4​

V4 확장합니다 CaseWhenValue

D​

D 확장합니다 CaseWhenValue

매개변수​

condition1​

C1

value1​

V1

condition2​

C2

value2​

V2

condition3​

C3

value3​

V3

condition4​

C4

value4​

V4

defaultValue​

D

반환값​

CaseWhenResult&lt;[V1, V2, V3, V4, D], true>

예시​

caseWhen(gt(user.age, 18), `adult`, `minor`)
caseWhen(
gt(user.age, 65),
`senior`,
gt(user.age, 18),
`adult`,
`minor`,
)
caseWhen(gt(user.age, 18), {
...user,
posts: q
.from({ post: postsCollection })
.where(({ post }) => eq(post.userId, user.id)),
})

호출 시그니처​

function caseWhen<C1, V1, C2, V2, C3, V3, C4, V4, C5, V5>(
condition1,
value1,
condition2,
value2,
condition3,
value3,
condition4,
value4,
condition5,
value5): CaseWhenResult<[V1, V2, V3, V4, V5], false>;

정의 위치: packages/db/src/query/builder/functions.ts:504

SQL의 CASE WHEN와 유사하게, 처음으로 일치하는 조건의 값을 반환합니다.

인수는 조건/값 쌍으로 평가된 후 선택적 기본값이 이어집니다. 스칼라 분기 값은 쿼리 표현식을 반환하며 다음과 같은 표현식 컨텍스트에서 사용할 수 있습니다: select, where, orderBy, groupBy와 같은 표현식 컨텍스트, having 및 동등 조인 피연산자에서 사용됩니다. 스칼라 브랜치가 일치하지 않고 기본값도 제공되지 않으면 결과는 null입니다.

브랜치 값이 프로젝션 객체인 경우 caseWhen은 select 전용 프로젝션 값이 됩니다. 프로젝션 브랜치에는 중첩 필드, ref 스프레드, include를 포함할 수 있습니다. 일치하는 프로젝션 브랜치가 없고 기본값도 제공되지 않으면 결과는 undefined입니다.

타입 매개변수​

C1​

C1 확장합니다 ExpressionLike

V1​

V1 확장합니다 CaseWhenValue

C2​

C2 확장합니다 ExpressionLike

V2​

V2 확장합니다 CaseWhenValue

C3​

C3 확장합니다 ExpressionLike

V3​

V3 확장합니다 CaseWhenValue

C4​

C4 확장합니다 ExpressionLike

V4​

V4 확장합니다 CaseWhenValue

C5​

C5 확장합니다 ExpressionLike

V5​

V5 확장합니다 CaseWhenValue

매개변수​

condition1​

C1

value1​

V1

condition2​

C2

value2​

V2

condition3​

C3

value3​

V3

condition4​

C4

value4​

V4

condition5​

C5

value5​

V5

반환값​

CaseWhenResult&lt;[V1, V2, V3, V4, V5], false>

예시​

caseWhen(gt(user.age, 18), `adult`, `minor`)
caseWhen(
gt(user.age, 65),
`senior`,
gt(user.age, 18),
`adult`,
`minor`,
)
caseWhen(gt(user.age, 18), {
...user,
posts: q
.from({ post: postsCollection })
.where(({ post }) => eq(post.userId, user.id)),
})

호출 시그니처​

function caseWhen<C1, V1, C2, V2, C3, V3, C4, V4, C5, V5, D>(
condition1,
value1,
condition2,
value2,
condition3,
value3,
condition4,
value4,
condition5,
value5,
defaultValue): CaseWhenResult<[V1, V2, V3, V4, V5, D], true>;

정의 위치: packages/db/src/query/builder/functions.ts:527

SQL의 CASE WHEN와 유사하게, 처음으로 일치하는 조건의 값을 반환합니다.

인수는 조건/값 쌍으로 평가된 후 선택적 기본값이 이어집니다. 스칼라 분기 값은 쿼리 표현식을 반환하며 다음과 같은 표현식 컨텍스트에서 사용할 수 있습니다: select, where, orderBy, groupBy와 같은 표현식 컨텍스트, having 및 동등 조인 피연산자에서 사용됩니다. 스칼라 브랜치가 일치하지 않고 기본값도 제공되지 않으면 결과는 null입니다.

브랜치 값이 프로젝션 객체인 경우 caseWhen은 select 전용 프로젝션 값이 됩니다. 프로젝션 브랜치에는 중첩 필드, ref 스프레드, include를 포함할 수 있습니다. 일치하는 프로젝션 브랜치가 없고 기본값도 제공되지 않으면 결과는 undefined입니다.

타입 매개변수​

C1​

C1 extends ExpressionLike

V1​

V1 확장합니다 CaseWhenValue

C2​

C2 확장합니다 ExpressionLike

V2​

V2 확장합니다 CaseWhenValue

C3​

C3 확장합니다 ExpressionLike

V3​

V3 확장합니다 CaseWhenValue

C4​

C4 확장합니다 ExpressionLike

V4​

V4 확장합니다 CaseWhenValue

C5​

C5 확장합니다 ExpressionLike

V5​

V5 확장합니다 CaseWhenValue

D​

D 확장합니다 CaseWhenValue

매개변수​

condition1​

C1

value1​

V1

condition2​

C2

value2​

V2

condition3​

C3

value3​

V3

condition4​

C4

value4​

V4

condition5​

C5

value5​

V5

defaultValue​

D

반환값​

CaseWhenResult&lt;[V1, V2, V3, V4, V5, D], true>

예시​

caseWhen(gt(user.age, 18), `adult`, `minor`)
caseWhen(
gt(user.age, 65),
`senior`,
gt(user.age, 18),
`adult`,
`minor`,
)
caseWhen(gt(user.age, 18), {
...user,
posts: q
.from({ post: postsCollection })
.where(({ post }) => eq(post.userId, user.id)),
})

호출 시그니처​

function caseWhen<C1, V1, C2, V2, C3, V3, C4, V4, C5, V5>(
condition1,
value1,
condition2,
value2,
condition3,
value3,
condition4,
value4,
condition5,
value5,
condition6,
value6, ...
rest): any;

정의 위치: packages/db/src/query/builder/functions.ts:552

SQL의 CASE WHEN와 유사하게, 처음으로 일치하는 조건의 값을 반환합니다.

인수는 조건/값 쌍으로 평가된 후 선택적 기본값이 이어집니다. 스칼라 분기 값은 쿼리 표현식을 반환하며 다음과 같은 표현식 컨텍스트에서 사용할 수 있습니다: select, where, orderBy, groupBy와 같은 표현식 컨텍스트, having 및 동등 조인 피연산자에서 사용됩니다. 스칼라 브랜치가 일치하지 않고 기본값도 제공되지 않으면 결과는 null입니다.

브랜치 값이 프로젝션 객체인 경우 caseWhen은 select 전용 프로젝션 값이 됩니다. 프로젝션 브랜치에는 중첩 필드, ref 스프레드, include를 포함할 수 있습니다. 일치하는 프로젝션 브랜치가 없고 기본값도 제공되지 않으면 결과는 undefined입니다.

타입 매개변수​

C1​

C1 확장합니다 ExpressionLike

V1​

V1 확장합니다 CaseWhenValue

C2​

C2 확장합니다 ExpressionLike

V2​

V2 확장합니다 CaseWhenValue

C3​

C3 확장합니다 ExpressionLike

V3​

V3 확장합니다 CaseWhenValue

C4​

C4 확장합니다 ExpressionLike

V4​

V4 확장합니다 CaseWhenValue

C5​

C5 확장합니다 ExpressionLike

V5​

V5 확장합니다 CaseWhenValue

매개변수​

condition1​

C1

value1​

V1

condition2​

C2

value2​

V2

condition3​

C3

value3​

V3

condition4​

C4

value4​

V4

condition5​

C5

value5​

V5

condition6​

ExpressionLike

value6​

CaseWhenValue

rest​

...CaseWhenValue[]

반환값​

any

예시​

caseWhen(gt(user.age, 18), `adult`, `minor`)
caseWhen(
gt(user.age, 65),
`senior`,
gt(user.age, 18),
`adult`,
`minor`,
)
caseWhen(gt(user.age, 18), {
...user,
posts: q
.from({ post: postsCollection })
.where(({ post }) => eq(post.userId, user.id)),
})