본문으로 건너뛰기

함수: 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)),
})