이 설정은 system.settings에서 확인할 수 있으며, 소스를 기반으로 자동 생성됩니다.
cast_ipv4_ipv6_default_on_conversion_error
유형
Bool
기본값
0
버전 이력
| 버전 | 기본값 | 설명 |
|---|---|---|
| 22.3 | 0 | 함수 cast(value, 'IPv4') 및 cast(value, 'IPv6')가 toIPv4 및 toIPv6 함수와 동일하게 동작하도록 변경 |
IPv4로의 CAST 연산자, IPv6 유형으로의 CAST 연산자, toIPv4 및 toIPv6 함수는 변환 오류가 발생할 경우 예외를 발생시키는 대신 기본값을 반환합니다.
cast_keep_nullable
유형
Bool
기본값
0
CAST 작업에서 Nullable 데이터 타입을 유지할지 여부를 설정합니다.
이 설정을 활성화하고 CAST 함수의 인수가 Nullable이면 결과도 Nullable 타입으로 변환됩니다. 이 설정을 비활성화하면 결과는 항상 지정된 대상 타입을 정확히 따릅니다.
Possible values:
- 0 —
CAST결과는 지정된 대상 타입을 정확히 따릅니다. - 1 — 인수 타입이
Nullable이면CAST결과는Nullable(DestinationDataType)으로 변환됩니다.
예시
다음 쿼리는 결과가 지정된 대상 데이터 타입이 되도록 합니다:
SET cast_keep_nullable = 0;
SELECT CAST(toNullable(toInt32(0)) AS Int32) as x, toTypeName(x);결과:
┌─x─┬─toTypeName(CAST(toNullable(toInt32(0)), 'Int32'))─┐
│ 0 │ Int32 │
└───┴───────────────────────────────────────────────────┘다음 쿼리를 실행하면 대상 데이터 타입에 Nullable 수정자가 추가됩니다:
SET cast_keep_nullable = 1;
SELECT CAST(toNullable(toInt32(0)) AS Int32) as x, toTypeName(x);결과:
┌─x─┬─toTypeName(CAST(toNullable(toInt32(0)), 'Int32'))─┐
│ 0 │ Nullable(Int32) │
└───┴───────────────────────────────────────────────────┘관련 항목
- CAST 함수