데이터 변환 시 일반적으로 발생하는 문제
ClickHouse는 일반적으로 C++ 프로그램과 동일한 동작 방식을 사용합니다.to<type> 함수와 cast는 일부 경우에 서로 다르게 동작합니다. 예를 들어 LowCardinality의 경우 cast는 LowCardinality 특성을 제거하지만, to<type> 함수는 제거하지 않습니다. Nullable도 마찬가지입니다. 이러한 동작은 SQL 표준과 호환되지 않으며, cast_keep_nullable 설정으로 변경할 수 있습니다.
데이터 타입의 값을 더 작은 데이터 타입으로 변환할 때(예:
Int64에서 Int32로) 또는
호환되지 않는 데이터 타입 간에 변환할 때(예: String에서 Int로) 데이터가 손실될 수 있으므로 주의하십시오. 결과가 예상한 대로인지 반드시 신중하게 확인하십시오.toString 함수에 대한 참고 사항
toString 계열 함수는 숫자, 문자열(고정 문자열 제외), 날짜, 날짜와 시간을 서로 변환할 수 있도록 합니다.
이 함수들은 모두 하나의 인수를 받습니다.
- 문자열로 변환하거나 문자열에서 변환할 때는 TabSeparated 포맷(및 거의 모든 다른 텍스트 형식)과 동일한 규칙에 따라 값을 포맷하거나 파싱합니다. 문자열을 파싱할 수 없으면 예외가 발생하고 요청이 취소됩니다.
- 날짜를 숫자로 변환하거나 그 반대로 변환할 때 날짜는 Unix epoch 시작 이후 경과한 일 수에 해당합니다.
- 날짜와 시간을 숫자로 변환하거나 그 반대로 변환할 때 날짜와 시간은 Unix epoch 시작 이후 경과한 초 수에 해당합니다.
DateTime인수에 대한toString함수는 시간대 이름을 포함하는 두 번째 String 인수를 받을 수 있습니다. 예를 들어Europe/Amsterdam입니다. 이 경우 시간은 지정된 시간대에 따라 포맷됩니다.
toDate/toDateTime 함수 관련 참고 사항
toDate/toDateTime 함수의 날짜 형식과 날짜-시간 형식은 다음과 같이 정의됩니다.
toDate(unix_timestamp)를 지원할 수 있습니다. 그렇지 않으면 오류가 발생하며, 더 번거로운 toDate(toDateTime(unix_timestamp))를 작성해야 합니다.
날짜와 날짜와 시간 간 변환은 자연스러운 방식으로 수행됩니다. 즉, 시간이 없는 00:00:00을 추가하거나 시간 부분을 제거합니다.
숫자 타입 간 변환에는 C++에서 서로 다른 숫자 타입 사이에 값을 할당할 때와 동일한 규칙이 적용됩니다.
예시
Query
Response
toUnixTimestamp 함수도 함께 참고하십시오.
CAST
도입 버전: v1.1.0 값을 지정된 데이터 타입으로 변환합니다. reinterpret 함수와 달리, CAST는 대상 데이터 타입에서 동일한 값을 생성하려고 시도합니다. 이것이 불가능하면 예외가 발생합니다. 구문Any
예시
기본 사용법
Query
Response
Query
Response
Query
Response
DATE
도입 버전: v21.2.0 인수를 Date 데이터 타입으로 변환합니다.toDate의 MySQL 호환 별칭이며, 동작은 toDate와 동일합니다.
구문
Date 값을 반환합니다. Date
예시
기본 사용법
Query
Response
accurateCast
도입 버전: v1.1.0 값을 지정된 데이터 타입으로 변환합니다.CAST와 달리 accurateCast는 더 엄격한 타입 검사를 수행하며, 변환 시 데이터 정밀도가 손실되거나 변환이 불가능하면 예외를 발생시킵니다.
이 함수는 정밀도 손실과 잘못된 변환을 방지하므로 일반 CAST보다 안전합니다.
구문
Any
예시
변환에 성공한 경우
Query
Response
Query
Response
accurateCastOrDefault
도입 버전: v21.1.0 값을 지정된 데이터 타입으로 변환합니다.accurateCast와 유사하지만, 변환을 정확하게 수행할 수 없는 경우 예외를 발생시키는 대신 기본값을 반환합니다.
기본값이 두 번째 인수로 제공되면 해당 값은 대상 데이터 타입이어야 합니다.
기본값이 제공되지 않으면 대상 데이터 타입의 기본값이 사용됩니다.
구문
x— 변환할 값입니다.AnyT— 대상 데이터 타입의 이름입니다.const Stringdefault_value— 선택 사항입니다. 변환에 실패하면 반환할 기본값입니다.Any
Any
예시
변환 성공
Query
Response
Query
Response
Query
Response
accurateCastOrNull
도입 버전: v1.1.0 값을 지정된 데이터 타입으로 변환합니다.accurateCast와 유사하지만, 변환을 정확하게 수행할 수 없으면 예외를 발생시키는 대신 NULL을 반환합니다.
이 함수는 accurateCast의 안전성과 안정적인 오류 처리를 결합합니다.
구문
NULL을 반환합니다. Any
예시
변환 성공
Query
Response
Query
Response
formatRow
도입 버전: v20.7.0 지정한 포맷을 사용해 임의의 표현식을 문자열로 변환합니다.포맷에 suffix/prefix가 포함되어 있으면 각 행마다 기록됩니다.
이 함수는 행 기반 포맷만 지원합니다.
String
예시
기본 사용법
Query
Response
Query
Response
formatRowNoNewline
도입 버전: v20.7.0formatRow와 동일하지만, 각 행 끝의 줄바꿈 문자를 제거합니다.
지정된 포맷을 사용해 임의의 표현식을 문자열로 변환하되, 결과 끝에 붙는 줄바꿈 문자는 모두 제거합니다.
구문
String
예시
기본 사용법
Query
Response
fromUnixTimestamp64Micro
도입 버전: v20.5.0 마이크로초 단위의 Unix timestamp를 마이크로초 정밀도를 갖는DateTime64 값으로 변환합니다.
입력 값은 마이크로초 정밀도의 Unix timestamp(1970-01-01 00:00:00 UTC 이후 경과한 마이크로초 수)로 처리됩니다.
구문
DateTime64 값을 반환합니다. DateTime64(6)
예시
사용 예시
Query
Response
fromUnixTimestamp64Milli
도입 버전: v20.5.0 밀리초 단위 Unix timestamp를 밀리초 정밀도의DateTime64 값으로 변환합니다.
입력 값은 밀리초 정밀도의 Unix timestamp(1970-01-01 00:00:00 UTC 이후 경과한 밀리초 수)로 처리됩니다.
구문
DateTime64 값입니다. DateTime64(3)
예시
사용 예시
Query
Response
fromUnixTimestamp64Nano
도입 버전: v20.5.0 나노초 단위의 Unix timestamp를 나노초 정밀도를 가진DateTime64 값으로 변환합니다.
입력 값은 나노초 정밀도의 Unix timestamp(1970-01-01 00:00:00 UTC 이후 경과한 나노초 수)로 간주됩니다.
입력 값은 입력 값에 지정된 시간대가 아니라 UTC timestamp로 간주된다는 점에 유의하십시오.
DateTime64 값을 반환합니다. DateTime64(9)
예시
사용 예시
Query
Response
fromUnixTimestamp64Second
도입 버전: v24.12.0 초 단위 Unix timestamp를 초 단위 정밀도의DateTime64 값으로 변환합니다.
입력 값은 초 단위 정밀도의 Unix timestamp(1970-01-01 00:00:00 UTC 이후 경과한 초 수)로 처리됩니다.
구문
DateTime64 값을 반환합니다. DateTime64(0)
예시
사용 예시
Query
Response
kqlParameterCast
도입 버전: v26.9.0 값을 선언된 Kusto Query Language 유형과 비교해 검사한 뒤 해당 유형에 대응하는 ClickHouse 캐리어 유형으로 변환합니다. 선언된 KQL 타입에 속하지 않는 유형의 인수는 분석 단계에서 거부되며, 값이 범위에 맞지 않으면(예:int 오버플로우) 행 단위 오류가 발생합니다. 두 번째 인수는 선언된 KQL 타입 이름이고, 세 번째 인수는 오류 메시지에 사용할 매개변수를 설명합니다. 두 인수 모두 상수 문자열이어야 합니다.
이 함수는 dialect = 'kusto'일 때 유형이 지정된 함수 매개변수를 처리하는 데 사용됩니다. SQL에서 직접 호출하기 위한 함수가 아닙니다.
구문
value— KQL 함수 호출이 전달하는 인수입니다. -type— 선언된 KQL 타입 이름이며, 상수 문자열입니다. -parameter— 매개변수에 대한 설명이며, 오류 메시지에 사용되는 상수 문자열입니다.
value입니다.
예시
long
Query
Response
Query
Response
kqlToTimespan
도입 버전: v26.8.0 Kusto Query Language의totimespan()과 동일하게 값을 timespan(나노초 단위의 Interval)으로 변환합니다.
timespan은 그대로 반환되고, 숫자는 일수로 해석되며, 문자열은 [-][d.]hh:mm:ss[.fffffff] 형식으로 읽힙니다.
파싱할 수 없는 경우 NULL이 됩니다.
이 함수는 dialect = 'kusto'일 때 totimespan()의 실제 구현을 담당하며, SQL에서 직접 호출하기 위한
함수가 아닙니다.
구문
x— timespan, 일 수를 나타내는 숫자, 또는 timespan을 표기한 문자열.
NULL을 반환합니다.
예시
string
Query
Response
Query
Response
parseDateTime
도입 버전: v23.3.0 MySQL 날짜 포맷 문자열에 따라 날짜 및 시간 문자열을 파싱합니다. 이 함수는formatDateTime의 역함수입니다.
포맷 String을 사용하여 String 인수를 파싱합니다. DateTime 유형을 반환합니다.
구문
TO_UNIXTIME
인수
time_string— DateTime으로 파싱할 문자열입니다.Stringformat—time_string을 파싱하는 방법을 지정하는 포맷 문자열입니다.Stringtimezone— 선택 사항입니다. 시간대를 지정합니다.String
DateTime
예시
사용 예시
Query
Response
parseDateTime32BestEffort
도입 버전: v20.9.0 날짜 및 시간의 문자열 표현을DateTime 데이터 타입으로 변환합니다.
이 함수는 ISO 8601, RFC 1123 - 5.2.14 RFC-822 Date and Time Specification, ClickHouse 및 기타 일부 날짜/시간 포맷을 파싱합니다.
구문
time_string— 변환할 날짜 및 시간이 들어 있는 String입니다.Stringtime_zone— 선택 사항입니다.time_string을 해석할 때 기준이 되는 시간대입니다.String
time_string을 DateTime으로 반환합니다. DateTime
예시
사용 예시
Query
Response
Query
Response
Query
Response
parseDateTime32BestEffortOrNull
도입 버전: v20.9.0 처리할 수 없는 날짜 포맷을 만나면NULL을 반환한다는 점만 제외하면 parseDateTime32BestEffort와 동일합니다.
구문
time_string— 변환할 날짜와 시간이 포함된 String입니다.Stringtime_zone— 선택 사항입니다.time_string을 파싱할 때 기준이 되는 시간대입니다.String
DateTime 객체를 반환합니다. 파싱에 실패하면 NULL을 반환합니다. DateTime
예시
사용 예시
Query
Response
parseDateTime32BestEffortOrZero
도입 버전: v20.9.0 처리할 수 없는 날짜 포맷을 만나면 제로 날짜 또는 제로 날짜 시간을 반환한다는 점을 제외하면parseDateTime32BestEffort와 동일합니다.
구문
time_string— 변환할 날짜와 시간이 포함된 문자열입니다.Stringtime_zone— 선택 사항입니다.time_string을 파싱할 때 사용할 시간대입니다.String
DateTime 객체를 반환합니다. 파싱에 실패하면 제로 날짜(1970-01-01 00:00:00)를 반환합니다. DateTime
예시
사용 예시
Query
Response
parseDateTime64
도입 버전: v24.11.0 MySQL 날짜 포맷 문자열에 따라 초 미만 정밀도를 포함한 날짜 및 시간 문자열을 파싱합니다. 이 함수는 DateTime64용formatDateTime의 역함수입니다.
포맷 String을 사용해 String 인수를 파싱합니다. 0000년부터 9999년까지의 날짜를 초 미만 정밀도로 표현할 수 있는 DateTime64 유형을 반환합니다(값이 Int64 틱 수로 저장되므로 정밀도가 높을수록 표현 가능한 범위는 더 좁아집니다. 정밀도 8은 약 4892년까지이고, 정밀도 9는 1677년부터 2262년까지를 포괄합니다).
구문
time_string— DateTime64로 파싱할 문자열입니다.Stringformat—time_string을 어떻게 파싱할지 지정하는 포맷 문자열입니다.Stringtimezone— 선택 사항입니다. 시간대입니다.String
DateTime64
예시
사용 예시
Query
Response
parseDateTime64BestEffort
도입 버전: v20.1.0parseDateTimeBestEffort 함수와 같지만, 밀리초와 마이크로초도 파싱하며 DateTime64 데이터 타입을 반환합니다.
구문
time_string— 변환할 날짜 또는 날짜와 시간이 포함된 String입니다.Stringprecision— 선택 사항입니다. 필요한 정밀도입니다. 밀리초는3, 마이크로초는6입니다. 기본값:3.UInt8time_zone— 선택 사항입니다. 시간대입니다. 함수는 해당 시간대에 따라time_string을 파싱합니다.String
time_string을 DateTime64 데이터 타입으로 변환한 값을 반환합니다. DateTime64
예시
사용 예시
Query
Response
parseDateTime64BestEffortOrNull
도입 버전: v20.1.0 처리할 수 없는 날짜 포맷이 입력되면NULL을 반환한다는 점만 제외하면 parseDateTime64BestEffort와 동일합니다.
구문
time_string— 변환할 날짜 또는 날짜와 시간이 포함된 String입니다.Stringprecision— 선택 사항입니다. 필요한 정밀도입니다. 밀리초는3, 마이크로초는6입니다. 기본값은3입니다.UInt8time_zone— 선택 사항입니다. 시간대입니다. 이 함수는 해당 시간대에 따라time_string을 파싱합니다.String
time_string을 DateTime64로 변환한 값을 반환합니다. 입력을 파싱할 수 없으면 NULL을 반환합니다. DateTime64 또는 NULL
예시
사용 예시
Query
Response
parseDateTime64BestEffortOrZero
도입 버전: v20.1.0 처리할 수 없는 날짜 포맷을 만나면 제로 날짜 또는 제로 날짜 시간 값을 반환한다는 점을 제외하면parseDateTime64BestEffort와 동일합니다.
구문
time_string— 변환할 날짜 또는 날짜와 시간이 포함된 String입니다.Stringprecision— 선택 사항입니다. 필요한 정밀도입니다. 밀리초는3, 마이크로초는6입니다. 기본값은3입니다.UInt8time_zone— 선택 사항입니다. 시간대입니다. 함수는 시간대에 따라time_string을 파싱합니다.String
time_string을 DateTime64로 변환한 값을 반환합니다. 입력을 파싱할 수 없으면 제로 날짜/날짜시간 값(1970-01-01 00:00:00.000)을 반환합니다. DateTime64
예시
사용 예시
Query
Response
parseDateTime64BestEffortUS
도입 버전: v22.8.0parseDateTime64BestEffort와 동일하지만, 날짜가 모호한 경우에는 미국식 날짜 포맷(MM/DD/YYYY 등)을 우선 적용합니다.
구문
time_string— 변환할 날짜 또는 날짜와 시간이 들어 있는 문자열입니다.Stringprecision— 선택 사항입니다. 필요한 정밀도입니다. 밀리초는3, 마이크로초는6입니다. 기본값:3입니다.UInt8time_zone— 선택 사항입니다. 시간대입니다. 함수는 해당 시간대에 따라time_string을 파싱합니다.String
time_string을 DateTime64로 변환해 반환합니다. DateTime64
예시
사용 예시
Query
Response
parseDateTime64BestEffortUSOrNull
도입 버전: v22.8.0parseDateTime64BestEffort와 동일하지만, 이 함수는 날짜 포맷이 모호할 때 미국식 날짜 포맷(MM/DD/YYYY 등)을 우선 적용하며, 처리할 수 없는 날짜 포맷을 만나면 NULL을 반환합니다.
구문
time_string— 변환할 날짜 또는 시간이 포함된 날짜를 담고 있는 String입니다.Stringprecision— 선택 사항입니다. 필요한 정밀도입니다. 밀리초는3, 마이크로초는6입니다. 기본값은3입니다.UInt8time_zone— 선택 사항입니다. 시간대입니다. 이 함수는 해당 시간대에 따라time_string을 파싱합니다.String
time_string을 DateTime64로 변환한 값을 반환합니다. 입력을 파싱할 수 없으면 NULL을 반환합니다. DateTime64 또는 NULL
예시
사용 예시
Query
Response
parseDateTime64BestEffortUSOrZero
도입 버전: v22.8.0parseDateTime64BestEffort와 동일하지만, 날짜 포맷이 모호할 때는 미국식 날짜 포맷(MM/DD/YYYY 등)을 우선하며, 처리할 수 없는 날짜 포맷을 만나면 제로 날짜 또는 제로 날짜 시간(date time)을 반환합니다.
구문
time_string— 변환할 날짜 또는 날짜와 시간이 포함된 문자열입니다.Stringprecision— 선택 사항입니다. 필요한 정밀도입니다. 밀리초는3, 마이크로초는6입니다. 기본값은3입니다.UInt8time_zone— 선택 사항입니다. 시간대입니다. 함수는time_string을 이 시간대에 따라 파싱합니다.String
time_string을 DateTime64로 변환한 값을 반환합니다. 입력을 파싱할 수 없으면 제로 날짜/날짜시간(1970-01-01 00:00:00.000)을 반환합니다. DateTime64
예시
사용 예시
Query
Response
parseDateTime64InJodaSyntax
도입 버전: v24.10.0 Joda 날짜 포맷 문자열에 따라 초 미만 정밀도를 포함하는 날짜 및 시간 문자열을 파싱합니다. 이 함수는 DateTime64용formatDateTimeInJodaSyntax의 역함수입니다.
Joda 스타일의 포맷 String을 사용해 String 인수를 파싱합니다. 반환값은 초 미만 정밀도로 0000년부터 9999년까지의 날짜를 표현할 수 있는 DateTime64 유형입니다(값이 Int64 틱 수로 저장되므로 높은 정밀도일수록 표현 가능한 범위는 더 좁아집니다. precision 8은 약 4892년까지이고 precision 9는 1677년부터 2262년까지입니다).
포맷 패턴은 Joda Time documentation을 참조하십시오.
구문
time_string— DateTime64로 파싱할 String입니다.Stringformat—time_string를 파싱하는 방법을 지정하는 Joda 문법의 포맷 문자열입니다.Stringtimezone— 선택 사항입니다. 시간대입니다.String
DateTime64
예시
사용 예시
Query
Response
parseDateTime64InJodaSyntaxOrNull
도입 버전: v24.10.0parseDateTime64InJodaSyntax와 동일하지만, 구문 분석할 수 없는 날짜 포맷을 만나면 NULL을 반환합니다.
구문
time_string— DateTime64로 파싱할 문자열입니다.Stringformat—time_string을 파싱하는 방법을 지정하는 Joda 문법의 포맷 문자열입니다.Stringtimezone— 선택 사항입니다. 시간대입니다.String
Nullable(DateTime64)
예시
사용 예시
Query
Response
parseDateTime64InJodaSyntaxOrZero
도입 버전: v24.10.0parseDateTime64InJodaSyntax와 동일하지만, 해석할 수 없는 날짜 포맷을 만나면 제로 날짜를 반환합니다.
구문
time_string— DateTime64로 파싱할 문자열입니다.Stringformat—time_string을 파싱하는 방법을 지정하는 Joda 문법 포맷 문자열입니다.Stringtimezone— 선택 사항입니다. 시간대입니다.String
DateTime64
예시
사용 예시
Query
Response
parseDateTime64OrNull
도입 버전: v24.11.0parseDateTime64와 동일하지만, 파싱할 수 없는 날짜 포맷을 만나면 NULL을 반환합니다.
구문
time_string— DateTime64로 파싱할 문자열입니다.Stringformat—time_string을 파싱하는 방법을 지정하는 포맷 문자열입니다.Stringtimezone— 선택 사항인 시간대입니다.String
Nullable(DateTime64)
예시
사용 예시
Query
Response
parseDateTime64OrZero
도입 버전: v24.11.0parseDateTime64와 같지만, 파싱할 수 없는 날짜 포맷을 만나면 제로 날짜를 반환합니다.
구문
time_string— DateTime64로 파싱할String입니다.Stringformat— time_string을 어떻게 파싱할지 지정하는 포맷 문자열입니다.Stringtimezone— 선택 사항입니다. 시간대입니다.String
DateTime64
예시
사용 예시
Query
Response
parseDateTimeBestEffort
도입 버전: v1.1.0 String 형식의 날짜 및 시간을 DateTime 데이터 타입으로 변환합니다. 이 함수는 ISO 8601, RFC 1123 - 5.2.14 RFC-822 Date and Time Specification, ClickHouse 및 일부 다른 날짜/시간 포맷을 파싱합니다. 지원되는 비표준 포맷:- 9~10자리 Unix 타임스탬프를 포함하는 문자열
- 날짜와 시간 구성 요소를 포함하는 문자열:
YYYYMMDDhhmmss,DD/MM/YYYY hh:mm:ss,DD-MM-YY hh:mm,YYYY-MM-DD hh:mm:ss등 - 날짜는 있지만 시간 구성 요소는 없는 문자열:
YYYY,YYYYMM,YYYY*MM,DD/MM/YYYY,DD-MM-YY등 - 일(day)과 시간을 포함하는 문자열:
DD,DD hh,DD hh:mm. 이 경우MM은01로 대체됩니다. - 날짜와 시간에 시간대 오프셋 정보가 함께 포함된 문자열:
YYYY-MM-DD hh:mm:ss ±h:mm등 - syslog 타임스탬프:
Mmm dd hh:mm:ss. 예:Jun 9 14:20:32
time_string— 변환할 날짜와 시간이 들어 있는String입니다.Stringtime_zone— 선택 사항입니다.time_string을 파싱할 때 사용할 시간대입니다.String
time_string을 DateTime으로 반환합니다. DateTime
예시
사용 예시
Query
Response
Query
Response
Query
Response
parseDateTimeBestEffortOrNull
도입 버전: v1.1.0parseDateTimeBestEffort와 동일하지만, 처리할 수 없는 날짜 포맷을 만나면 NULL을 반환합니다.
이 함수는 ISO 8601, RFC 1123 - 5.2.14 RFC-822 Date and Time Specification, ClickHouse 포맷과 그 밖의 일부 날짜 및 시간 포맷을 파싱합니다.
지원되는 비표준 포맷:
- 9~10자리 Unix 타임스탬프를 포함하는 문자열.
- 날짜 및 시간 component를 포함하는 문자열:
YYYYMMDDhhmmss,DD/MM/YYYY hh:mm:ss,DD-MM-YY hh:mm,YYYY-MM-DD hh:mm:ss등. - 날짜는 있지만 시간 component는 없는 문자열:
YYYY,YYYYMM,YYYY*MM,DD/MM/YYYY,DD-MM-YY등. - 일과 시간이 포함된 문자열:
DD,DD hh,DD hh:mm. 이 경우MM은01로 대체됩니다. - 날짜와 시간에 시간대 오프셋 정보까지 포함된 문자열:
YYYY-MM-DD hh:mm:ss ±h:mm등. - syslog timestamp:
Mmm dd hh:mm:ss. 예:Jun 9 14:20:32.
time_string— 변환할 날짜와 시간이 포함된 String입니다.Stringtime_zone— 선택 사항입니다.time_string을 파싱할 때 기준으로 사용할 시간대입니다.String
time_string을 DateTime으로 반환합니다. 입력을 파싱할 수 없으면 NULL을 반환합니다. DateTime 또는 NULL
예시
사용 예시
Query
Response
parseDateTimeBestEffortOrZero
도입 버전: v1.1.0 처리할 수 없는 날짜 포맷을 만나면 제로 날짜 또는 제로 날짜 시간을 반환한다는 점을 제외하면parseDateTimeBestEffort와 동일합니다.
이 함수는 ISO 8601, RFC 1123 - 5.2.14 RFC-822 Date and Time Specification, ClickHouse 및 기타 일부 날짜/시간 포맷을 파싱합니다.
지원되는 비표준 포맷:
- 9~10자리 Unix 타임스탬프를 포함하는 문자열.
- 날짜와 시간 구성 요소를 포함하는 문자열:
YYYYMMDDhhmmss,DD/MM/YYYY hh:mm:ss,DD-MM-YY hh:mm,YYYY-MM-DD hh:mm:ss등. - 날짜는 있지만 시간 구성 요소는 없는 문자열:
YYYY,YYYYMM,YYYY*MM,DD/MM/YYYY,DD-MM-YY등. - 일과 시간이 포함된 문자열:
DD,DD hh,DD hh:mm. 이 경우MM은01로 대체됩니다. - 날짜와 시간에 시간대 오프셋 정보가 함께 포함된 문자열:
YYYY-MM-DD hh:mm:ss ±h:mm등. - syslog timestamp:
Mmm dd hh:mm:ss. 예:Jun 9 14:20:32.
time_string— 변환할 날짜 및 시간이 포함된 String입니다.Stringtime_zone— 선택 사항입니다.time_string을 파싱할 때 기준이 되는 시간대입니다.String
time_string을 DateTime으로 반환합니다. 입력을 파싱할 수 없으면 제로 날짜/날짜-시간(1970-01-01 또는 1970-01-01 00:00:00)을 반환합니다. DateTime
예시
사용 예시
Query
Response
parseDateTimeBestEffortUS
도입 버전: v1.1.0 이 함수는 ISO 날짜 포맷(예:YYYY-MM-DD hh:mm:ss)과 월 및 일 구성 요소를 모호함 없이 추출할 수 있는 다른 날짜 포맷(예: YYYYMMDDhhmmss, YYYY-MM, DD hh, YYYY-MM-DD hh:mm:ss ±h:mm)에 대해서는 parseDateTimeBestEffort와 동일하게 동작합니다.
월과 일 구성 요소를 모호함 없이 추출할 수 없는 경우(예: MM/DD/YYYY, MM-DD-YYYY, MM-DD-YY)에는 DD/MM/YYYY, DD-MM-YYYY, DD-MM-YY 대신 미국식 날짜 형식을 우선 적용합니다.
앞 문장의 예외로, 월이 12보다 크고 31보다 작거나 같은 경우에는 이 함수가 parseDateTimeBestEffort의 동작으로 되돌아가며, 예를 들어 15/08/2020은 2020-08-15로 파싱됩니다.
구문
time_string— 변환할 날짜 및 시간이 포함된 String입니다.Stringtime_zone— 선택 사항입니다.time_string을 파싱할 때 기준으로 사용할 시간대입니다.String
time_string을 DateTime으로 반환합니다. DateTime
예시
사용 예시
Query
Response
parseDateTimeBestEffortUSOrNull
도입 버전: v1.1.0 처리할 수 없는 날짜 포맷을 만나면NULL을 반환한다는 점만 제외하면 parseDateTimeBestEffortUS 함수와 동일합니다.
이 함수는 ISO 날짜 포맷에서는 parseDateTimeBestEffort처럼 동작하지만, 모호한 경우에는 미국식 날짜 형식을 우선 적용하며, 파싱 오류가 발생하면 NULL을 반환합니다.
구문
time_string— 변환할 날짜와 시간이 포함된 String입니다.Stringtime_zone— 선택 사항입니다.time_string을 파싱할 때 기준이 되는 시간대입니다.String
time_string을 미국식 포맷을 우선하여 DateTime으로 반환합니다. 입력을 파싱할 수 없으면 NULL을 반환합니다. DateTime 또는 NULL
예시
사용 예시
Query
Response
parseDateTimeBestEffortUSOrZero
도입 버전: v1.1.0 처리할 수 없는 날짜 포맷을 만나면 제로 날짜 (1970-01-01) 또는 시간이 포함된 제로 날짜 (1970-01-01 00:00:00)를 반환한다는 점을 제외하면 parseDateTimeBestEffortUS 함수와 동일합니다.
이 함수는 ISO 날짜 포맷에서는 parseDateTimeBestEffort와 동일하게 동작하지만, 모호한 경우에는 미국식 날짜 형식을 우선 적용하며, 파싱 오류가 발생하면 제로 날짜 값을 반환합니다.
구문
time_string— 변환할 날짜 및 시간이 포함된 String입니다.Stringtime_zone— 선택 사항입니다.time_string을 파싱할 때 기준이 되는 시간대입니다.String
time_string을 DateTime으로 반환합니다. 입력을 파싱할 수 없으면 제로 날짜/날짜 및 시간(1970-01-01 또는 1970-01-01 00:00:00)을 반환합니다. DateTime
예시
사용 예시
Query
Response
parseDateTimeInJodaSyntax
도입 버전: v23.3.0 Joda 날짜 포맷 문자열에 따라 날짜 및 시간 문자열을 파싱합니다. 이 함수는formatDateTimeInJodaSyntax의 역함수입니다.
Joda 스타일 포맷 String을 사용하여 String 인수를 파싱합니다. DateTime 유형을 반환합니다.
포맷 패턴은 Joda Time documentation 문서를 참조하십시오.
구문
time_string— DateTime으로 파싱할String.Stringformat—time_string을 파싱하는 방법을 지정하는 Joda 문법의 포맷 문자열.Stringtimezone— 선택 사항입니다. 시간대입니다.String
DateTime
예시
사용 예시
Query
Response
parseDateTimeInJodaSyntaxOrNull
도입 버전: v23.3.0parseDateTimeInJodaSyntax와 동일하지만, 파싱할 수 없는 날짜 포맷을 만나면 NULL을 반환합니다.
구문
time_string— DateTime으로 파싱할 문자열입니다.Stringformat—time_string을 파싱하는 방법을 지정하는 Joda 문법 포맷 문자열입니다.Stringtimezone— 선택 사항인 시간대입니다.String
Nullable(DateTime)
예시
사용 예시
Query
Response
parseDateTimeInJodaSyntaxOrZero
도입된 버전: v23.3.0parseDateTimeInJodaSyntax와 동일하지만, 해석할 수 없는 날짜 포맷을 만나면 제로 날짜를 반환합니다.
구문
time_string— DateTime으로 파싱할 문자열입니다.Stringformat— time_string을 파싱하는 방법을 지정하는 Joda 문법의 포맷 문자열입니다.Stringtimezone— 선택 사항입니다. 시간대입니다.String
DateTime
예시
사용 예시
Query
Response
parseDateTimeOrNull
도입 버전: v23.3.0parseDateTime와 동일하지만, 파싱할 수 없는 날짜 포맷을 만나면 NULL을 반환합니다.
구문
str_to_date
인수
time_string— DateTime으로 파싱할 문자열입니다.Stringformat—time_string을 파싱하는 방법을 지정하는 포맷 문자열입니다.Stringtimezone— 선택 사항입니다. 시간대입니다.String
Nullable(DateTime)
예시
사용 예시
Query
Response
parseDateTimeOrZero
도입 버전: v23.3.0parseDateTime와 동일하지만, 파싱할 수 없는 날짜 포맷을 만나면 제로 날짜를 반환합니다.
구문
time_string— DateTime으로 파싱할 문자열입니다.Stringformat—time_string을 파싱하는 방법을 지정하는 포맷 문자열입니다.Stringtimezone— 선택 사항입니다. 시간대입니다.String
DateTime
예시
사용 예시
Query
Response
reinterpret
도입 버전: v1.1.0 제공된 값x에 대해 메모리에 있는 동일한 원본 바이트 시퀀스를 사용하여 대상 유형으로 재해석합니다.
대상 타입이 String인 경우, 원본 Array는 원소 타입이 고정 크기이고 메모리상에 연속적으로 배치된 경우에만 지원됩니다(예: Array(UInt8) 또는 Array(FixedString(2))). 이때 원소의 바이트는 네이티브 인메모리 순서 그대로 복사되므로, 어떤 아키텍처에서든 결과를 다시 원래의 Array 타입으로 재해석할 수 있습니다. 원소가 가변 길이인 배열(예: Array(String))이나 널 허용 배열(예: Array(Nullable(Int32)))은 지원되지 않습니다.
구문
x— 재해석할 값입니다.String으로 재해석하는 경우 원본Array는 고정 크기의 연속된 원소로 이루어져 있어야 합니다.Anytype— 대상 타입. 배열인 경우, 배열의 요소 타입은 고정 길이 타입이어야 합니다.String
Any
예시
사용 예시
Query
Response
Query
Response
Query
Response
reinterpretAsDate
도입 버전: v1.1.0 입력 값을 Date 값으로 재해석합니다(리틀 엔디언 순서를 가정). 이는 Unix epoch인 1970-01-01부터 경과한 일 수를 나타냅니다. 구문Date
예시
사용 예시
Query
Response
reinterpretAsDateTime
도입 버전: v1.1.0 입력 값을 DateTime 값으로 재해석합니다(리틀 엔디언 순서를 가정). 이 값은 Unix epoch인 1970-01-01 시작 이후의 일 수를 나타냅니다. 구문x— Unix epoch 시작 시점부터 경과한 초 수입니다.(U)Int*또는Float*또는Date또는DateTime또는UUID또는String또는FixedString
DateTime
예시
사용 예시
Query
Response
reinterpretAsFixedString
도입 버전: v1.1.0 입력 값을 고정 길이 문자열로 재해석합니다(리틀 엔디언 순서를 가정). 끝의 null byte는 무시됩니다. 예를 들어, 이 함수는 UInt32 값 255를 단일 문자 문자열로 반환합니다. 구문x를 나타내는 바이트를 포함한 고정 길이 문자열입니다. FixedString
예시
사용 예시
Query
Response
reinterpretAsFloat32
도입 버전: v1.1.0 입력 값을 Float32 타입의 값으로 재해석합니다.CAST와 달리, 이 함수는 원래 값을 유지하려고 시도하지 않습니다. 대상 타입이 입력 타입을 표현할 수 없으면 출력은 정의되지 않습니다.
구문
x를 재해석한 값을 반환합니다. Float32
예시
사용 예시
Query
Response
reinterpretAsFloat64
도입 버전: v1.1.0 입력 값을 Float64 유형의 값으로 재해석합니다.CAST와 달리 이 함수는 원래 값을 유지하려고 하지 않습니다. 대상 유형으로 입력 유형을 표현할 수 없는 경우, 출력 결과는 정의되지 않습니다.
구문
x를 반환합니다. Float64
예시
사용 예시
Query
Response
reinterpretAsInt128
도입 버전: v1.1.0 입력 값을 Int128 유형의 값으로 재해석합니다.CAST와 달리, 이 함수는 원래 값을 보존하지 않습니다. 대상 유형이 입력 유형을 표현할 수 없으면 결과는 정의되지 않습니다.
구문
x를 반환합니다. Int128
예시
사용 예시
Query
Response
reinterpretAsInt16
도입 버전: v1.1.0 입력 값을 Int16 유형의 값으로 재해석합니다.CAST와 달리 이 함수는 원래 값을 보존하려고 하지 않습니다. 대상 유형으로 입력 유형을 표현할 수 없으면 결과는 정의되지 않습니다.
구문
x를 반환합니다. Int16
예시
사용 예시
Query
Response
reinterpretAsInt256
도입 버전: v1.1.0 입력 값을 Int256 유형의 값으로 재해석합니다.CAST와 달리, 이 함수는 원래 값을 보존하려고 하지 않습니다. 대상 유형으로 입력 유형을 표현할 수 없으면 출력은 정의되지 않습니다.
구문
x를 반환합니다. Int256
예시
사용 예시
Query
Response
reinterpretAsInt32
도입 버전: v1.1.0 입력 값을 Int32 유형의 값으로 재해석합니다.CAST와 달리, 이 함수는 원래 값을 보존하지 않습니다. 대상 유형으로 입력 유형을 표현할 수 없으면 출력은 정의되지 않습니다.
구문
x를 반환합니다. Int32
예시
사용 예시
Query
Response
reinterpretAsInt64
도입 버전: v1.1.0 입력 값을 Int64 형식의 값으로 재해석합니다.CAST와 달리, 이 함수는 원래 값을 보존하려고 하지 않습니다. 대상 형식이 입력 형식을 표현할 수 없으면 출력은 정의되지 않습니다.
구문
x를 반환합니다. Int64
예시
사용 예시
Query
Response
reinterpretAsInt8
도입 버전: v1.1.0 입력 값을 Int8 유형의 값으로 재해석합니다.CAST와 달리, 이 함수는 원래 값을 유지하려고 하지 않습니다. 대상 유형으로 입력 유형을 표현할 수 없으면 출력은 정의되지 않습니다.
구문
x를 반환합니다. Int8
예시
사용 예시
Query
Response
reinterpretAsString
도입 버전: v1.1.0 입력 값을 문자열로 재해석합니다. 스칼라 값의 경우 바이트 순서는 리틀 엔디언으로 정규화되며, 끝에 있는 널 바이트는 무시됩니다. 예를 들어, 이 함수는 UInt32 값 255를 단일 문자로 이루어진 문자열로 반환합니다. 고정 크기 원소로 이루어진Array의 경우, 원소 바이트는 후행 0 바이트를 잘라내지 않고 리틀 엔디언으로 정규화하지도 않으며 네이티브 인메모리 순서 그대로 복사됩니다. 따라서 어떤 아키텍처에서든 결과를 원래 Array 유형으로 다시 재해석할 수 있습니다.
구문
x를 나타내는 바이트가 포함된 String입니다. String
예시
사용 예시
Query
Response
Query
Response
reinterpretAsUInt128
도입 버전: v1.1.0 입력 값을 UInt128 유형의 값으로 재해석합니다.CAST와 달리, 이 함수는 원래 값을 보존하려고 하지 않습니다. 대상 유형이 입력 유형을 표현할 수 없으면 출력은 정의되지 않습니다.
구문
x를 반환합니다. UInt128
예시
사용 예시
Query
Response
reinterpretAsUInt16
도입 버전: v1.1.0 입력 값을 UInt16 유형의 값으로 재해석합니다.CAST와 달리, 이 함수는 원본 값을 보존하려고 하지 않습니다. 대상 유형이 입력 유형을 표현하지 못하면 결과는 정의되지 않습니다.
구문
x를 반환합니다. UInt16
예시
사용 예시
Query
Response
reinterpretAsUInt256
도입 버전: v1.1.0 입력 값을 UInt256 유형의 값으로 재해석합니다.CAST와 달리, 이 함수는 원래 값을 보존하지 않습니다. 대상 유형으로 입력 유형을 표현할 수 없으면 출력은 정의되지 않습니다.
구문
x를 반환합니다. UInt256
예시
사용 예시
Query
Response
reinterpretAsUInt32
도입 버전: v1.1.0 입력 값을 UInt32 타입의 값으로 재해석합니다.CAST와 달리, 이 함수는 원래 값을 보존하려고 하지 않습니다. 대상 타입이 입력 타입을 표현할 수 없으면 출력 결과는 정의되지 않습니다.
구문
x를 반환합니다. UInt32
예시
사용 예시
Query
Response
reinterpretAsUInt64
도입 버전: v1.1.0 입력 값을 UInt64 타입의 값으로 재해석합니다.CAST와 달리 이 함수는 원래 값을 보존하려고 시도하지 않습니다. 대상 타입으로 입력 타입을 표현할 수 없으면 출력은 정의되지 않습니다.
구문
x를 재해석한 값을 반환합니다. UInt64
예시
사용 예시
Query
Response
reinterpretAsUInt8
도입 버전: v1.1.0 입력 값을 UInt8 유형의 값으로 재해석합니다.CAST와 달리, 이 함수는 원래 값을 유지하려고 하지 않습니다. 대상 유형으로 입력 유형을 표현할 수 없으면 출력은 정의되지 않습니다.
구문
x를 반환합니다. UInt8
예시
사용 예시
Query
Response
reinterpretAsUUID
도입 버전: v1.1.0 16바이트 문자열을 받아 각 8바이트 절반을 리틀 엔디언 바이트 순서로 해석한 UUID를 반환합니다. 문자열 길이가 충분하지 않으면 문자열 끝이 필요한 수의 null byte로 채워진 것처럼 함수가 동작합니다. 문자열이 16바이트보다 길면 끝의 추가 바이트는 무시됩니다. 구문fixed_string— 빅 엔디언 바이트 문자열입니다.FixedString
UUID
예시
문자열에서 UUID로
Query
Response
toBFloat16
도입 버전: v1.1.0 입력값을 BFloat16 유형의 값으로 변환합니다. 오류가 발생하면 예외를 발생시킵니다. 관련 항목: 구문expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식입니다.표현식
BFloat16
예시
사용 예시
Query
Response
toBFloat16OrNull
도입 버전: v1.1.0 String 입력값을 BFloat16 유형의 값으로 변환합니다. 문자열이 부동소수점 값을 나타내지 않으면 NULL을 반환합니다. 지원되는 인수:- 숫자 값의 문자열 표현.
NULL 반환):
- 2진수 및 16진수 값의 문자열 표현.
- 숫자 값.
이 함수는 문자열 표현에서 변환할 때 정밀도가 일부 손실되어도 오류를 발생시키지 않습니다.
x— 숫자를 나타내는 문자열입니다.String
NULL을 반환합니다. BFloat16 또는 NULL
예시
사용 예시
Query
Response
toBFloat16OrZero
도입 버전: v1.1.0 String 입력값을 BFloat16 유형의 값으로 변환합니다. 문자열이 부동소수점 값을 나타내지 않으면 함수는 0을 반환합니다. 지원되는 인수:- 숫자 값의 문자열 표현.
0 반환):
- 2진수 및 16진수 값의 문자열 표현.
- 숫자 값.
이 함수는 문자열 표현에서 변환하는 과정에서 정밀도가 일부 손실되어도 오류를 발생시키지 않음을 허용합니다.
x— 숫자를 나타내는 문자열입니다.String
0을 반환합니다. BFloat16
예시
사용 예시
Query
Response
toBool
도입 버전: v22.2.0 입력값을 Bool 유형으로 변환합니다. 구문expr— 숫자 또는 문자열을 반환하는 표현식입니다. 문자열은 ‘true’ 또는 ‘false’를 허용하며, 대소문자를 구분하지 않습니다.(U)Int*또는Float*또는String또는표현식
true 또는 false를 반환합니다. Bool
예시
사용 예시
Query
Response
toDate
도입 버전: v1.1.0 입력 값을Date 타입으로 변환합니다.
String, FixedString, DateTime 또는 숫자 타입에서 변환할 수 있습니다.
구문
x— 변환할 입력 값입니다.String또는FixedString또는DateTime또는(U)Int*또는Float*
Date
예시
String을 Date로 변환하기
Query
Response
Query
Response
Query
Response
toDate32
도입 버전: v21.9.0 인수를 Date32 데이터 유형으로 변환합니다. 값이[0000-01-01, 9999-12-31] 범위를 벗어나면 toDate32는 Date32에서 지원하는 경곗값을 반환합니다.
인수의 유형이 Date인 경우 해당 유형의 경계값을 기준으로 처리됩니다.
구문
Date32
예시
범위 내
Query
Response
Query
Response
toDate32OrDefault
도입 버전: v21.11.0 인수를 Date32 데이터 유형으로 변환합니다. Date32의 범위를 벗어난 숫자 값을 포함하여 인수를 변환할 수 없으면, 함수는 두 번째 인수(지정된 경우)를 기본값으로 반환하고, 그렇지 않으면 Date32의 과거 기본값인1900-01-01을 반환합니다(하한 경계값인 0000-01-01이 아닙니다). 인수가 Date 유형이면 해당 유형의 경계값이 적용됩니다.
toDate32와 달리 이 함수는 범위를 벗어난 숫자 인수를 Date32의 경계값으로 포화하지 않습니다. 이러한 인수는 변환할 수 없는 것으로 처리됩니다.
구문
expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패한 경우 반환할 기본값입니다.Date32
Date32 유형의 값을 반환하고, 실패하면 전달된 기본값을 반환하며, 기본값이 없으면 1900-01-01을 반환합니다. Date32
예시
성공적인 변환
Query
Response
Query
Response
Query
Response
toDate32OrNull
도입 버전: v21.9.0 입력 값을 Date32 유형의 값으로 변환하며, 유효하지 않은 인수가 전달되면NULL을 반환합니다.
toDate32와 동일하지만, 유효하지 않은 인수가 전달되면 NULL을 반환합니다.
구문
x— 날짜를 나타내는 문자열입니다.String
Date32 값을 반환하고, 그렇지 않으면 NULL을 반환합니다. Date32 또는 NULL
예시
사용 예시
Query
Response
toDate32OrZero
도입 버전: v21.9.0 입력 값을 Date32 유형의 값으로 변환하며, 유효하지 않은 인수가 전달되면 기본값1900-01-01을 반환합니다.
toDate32와 동일하지만, 유효하지 않은 인수가 전달되면 1900-01-01을 반환합니다.
1900-01-01은 유효하지 않은 입력에 대한 기존 기본값이며, 0000-01-01인 Date32의 하한값이 아닙니다.
관련 항목:
구문
x— 날짜를 나타내는 문자열입니다.String
1900-01-01)을 반환합니다. Date32
예시
사용 예시
Query
Response
toDateOrDefault
도입 버전: v21.11.0 toDate와 같지만, 변환에 실패하면 기본값을 반환합니다. 기본값은 두 번째 인수로 지정한 값이며, 지정하지 않으면 Date의 하한값이 반환됩니다. 구문expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패하면 반환할 기본값입니다.Date
Date 타입의 값을 반환하고, 그렇지 않으면 전달된 기본값이 있으면 해당 값을, 없으면 1970-01-01을 반환합니다. Date
예시
변환 성공
Query
Response
Query
Response
toDateOrNull
도입 버전: v1.1.0 입력 값을Date 유형으로 변환하되, 유효하지 않은 인수가 전달되면 NULL을 반환합니다.
toDate와 동일하지만, 유효하지 않은 인수가 전달되면 NULL을 반환합니다.
정수 인수는 toDate와 같은 방식으로 해석되며(65535를 초과하지 않으면 1970-01-01 이후의 일 수, 그렇지 않으면 Unix timestamp), Date 유형의 범위를 벗어나면 NULL을 반환합니다.
구문
x— 날짜를 나타내는 문자열이거나, 일 수를 나타내는 정수 또는 Unix timestamp입니다.String또는(U)Int8/16/32/64
Date 값을 반환하고, 그렇지 않으면 NULL을 반환합니다. Date 또는 NULL
예시
사용 예시
Query
Response
toDateOrZero
도입 버전: v1.1.0 입력값을Date 타입의 값으로 변환하며, 유효하지 않은 인수가 전달되면 Date의 하한값을 반환합니다.
toDate와 동일하지만, 유효하지 않은 인수가 전달되면 Date의 하한값을 반환합니다.
관련 항목:
구문
x— 날짜를 나타내는 문자열입니다.String
1970-01-01)을 반환합니다. Date
예시
사용 예시
Query
Response
toDateTime
도입 버전: v1.1.0 입력 값을 DateTime 타입으로 변환합니다.expr이 숫자이면 Unix epoch 시작 시점부터 경과한 초 수(Unix timestamp)로 해석됩니다.
expr이 String이면 Unix timestamp 또는 날짜/날짜+시간의 문자열 표현으로 해석될 수 있습니다.
따라서 짧은 숫자 문자열 표현(최대 4자리)은 모호성 때문에 명시적으로 파싱하지 않도록 되어 있습니다. 예를 들어 문자열 '1999'는 연도(Date / DateTime의 불완전한 문자열 표현)일 수도 있고 Unix timestamp일 수도 있습니다. 더 긴 숫자 문자열은 허용됩니다.expr이 Time 또는 Time64 값이면 Unix epoch 시작 시점부터 경과한 초 수로 해석됩니다. Time64의 소수부는 음의 무한대 방향으로 내림 처리되며, DateTime 범위를 벗어나는 값은 date_time_overflow_behavior 설정을 따릅니다.
구문
expr— 값입니다.String또는Int또는Date또는Date32또는Time또는Time64또는DateTime또는DateTime64time_zone— 시간대입니다.String
DateTime
예시
사용 예시
Query
Response
toDateTime32
도입 버전: v20.9.0 입력 값을DateTime 유형으로 변환합니다.
String, FixedString, Date, Date32, Time, Time64, DateTime, DateTime64 또는 숫자 유형((U)Int8, (U)Int16, (U)Int32, (U)Int64, (U)Int128, (U)Int256, BFloat16, Float32, Float64)에서 변환을 지원합니다. Decimal 값은 지원되지 않으며 예외가 발생합니다.
DateTime32는 DateTime의 별칭이며, 1970-01-01 00:00:00부터 2106-02-07 06:28:15까지의 날짜를 지원합니다.
문자열 또는 위에 나열된 포화 처리되는 숫자 유형에서 변환할 때 이 범위를 벗어나는 값은 범위 경계값으로 포화 처리됩니다. 유한하지 않은 부동 소수점 값(NaN, inf, -inf)은 변환할 수 없으며 예외가 발생합니다.
Date32, DateTime64, Time 또는 Time64 같은 다른 날짜 및 시간 유형에서 변환할 때는 date_time_overflow_behavior 설정을 따릅니다. 기본 ignore 모드에서는 값이 래핑될 수 있으며, saturate는 값을 범위 경계값으로 제한하고, throw는 예외를 발생시킵니다. Time64 값은 먼저 음의 무한대 방향으로 내림되어 초 단위로 처리됩니다.
구문
x— 변환할 입력 값입니다.String,FixedString,(U)Int*,Float*,BFloat16,Date,Date32,Time,Time64,DateTime또는DateTime64timezone— 선택 사항입니다. 반환되는DateTime값의 시간대입니다.String
DateTime
예시
문자열에서
Query
Response
Query
Response
Query
Response
toDateTime64
도입 버전: v20.1.0 입력값을DateTime64 유형의 값으로 변환합니다.
구문
expr— 숫자 또는 숫자를 문자열 표현한 값을 반환하는 표현식입니다.표현식scale— 틱 크기(정밀도)입니다: 10^(-scale)초.UInt8timezone— 선택 사항입니다. 지정된DateTime64객체의 시간대입니다.String
DateTime64
예시
값이 범위 내에 있는 경우
Query
Response
Query
Response
Query
Response
toDateTime64OrDefault
도입 버전: v21.11.0 toDateTime64와 마찬가지로, 이 함수는 입력 값을 DateTime64 유형의 값으로 변환하지만, 유효하지 않은 인수가 전달되면 DateTime64의 기본값 또는 지정된 기본값을 반환합니다. 구문expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.String또는(U)Int*또는Float*scale— 틱 크기(정밀도)입니다: 10^-정밀도초.UInt8timezone— 선택 사항입니다. 시간대입니다.Stringdefault— 선택 사항입니다. 파싱에 실패할 경우 반환할 기본값입니다.DateTime64
DateTime64
예시
변환 성공
Query
Response
Query
Response
toDateTime64OrNull
도입 버전: v20.1.0 입력값을DateTime64 유형의 값으로 변환하며, 유효하지 않은 인수가 전달되면 NULL을 반환합니다.
toDateTime64와 동일하지만, 유효하지 않은 인수가 전달되면 NULL을 반환합니다.
정수 인수는 초 단위의 Unix timestamp로 해석되며, DateTime64 유형의 범위를 벗어나면 NULL을 반환합니다.
구문
x— 시간과 초 미만 정밀도를 포함한 날짜를 문자열로 표현한 값 또는 정수형 Unix timestamp입니다.String또는(U)Int8/16/32/64precision— 선택 사항입니다. 반환 값의 초 미만 정밀도입니다.UInt8timezone— 선택 사항입니다. 반환 값의 시간대입니다.String
NULL을 반환합니다. DateTime64 또는 NULL
예시
사용 예시
Query
Response
toDateTime64OrZero
도입 버전: v20.1.0 입력 값을 DateTime64 유형의 값으로 변환하지만, 유효하지 않은 인수가 전달되면 0 DateTime64 값(Unix epoch,1970-01-01 00:00:00)을 반환합니다.
toDateTime64와 동일하지만, 유효하지 않은 인수가 전달되면 0 DateTime64 값을 반환합니다.
관련 항목:
구문
x— 날짜, 시간, 초 미만 정밀도를 포함한 문자열 표현입니다.Stringprecision— 선택 사항입니다. 반환 값의 초 미만 정밀도입니다.UInt8timezone— 선택 사항입니다. 반환 값의 시간대입니다.String
1970-01-01 00:00:00)을 반환합니다. DateTime64
예시
사용 예시
Query
Response
toDateTimeOrDefault
도입 버전: v21.11.0 toDateTime와 비슷하지만, 변환에 실패하면 기본값을 반환합니다. 기본값은 세 번째 인수(지정된 경우)이며, 지정되지 않으면 DateTime의 하한값을 반환합니다. 구문expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.String또는(U)Int*또는Float*timezone— 선택 사항입니다. 시간대입니다.Stringdefault— 선택 사항입니다. 파싱에 실패할 경우 반환할 기본값입니다.DateTime
DateTime 타입의 값을 반환합니다. 실패하면 default가 전달된 경우 해당 기본값을 반환하고, 그렇지 않으면 1970-01-01 00:00:00을 반환합니다. DateTime
예시
변환 성공
Query
Response
Query
Response
toDateTimeOrNull
도입 버전: v1.1.0 입력값을DateTime 타입의 값으로 변환하되, 잘못된 인수가 전달되면 NULL을 반환합니다.
toDateTime과 동일하지만, 잘못된 인수가 전달되면 NULL을 반환합니다.
정수 인수는 Unix timestamp로 해석되며, DateTime 타입 범위를 벗어나면 NULL을 반환합니다.
구문
x— 시간이 포함된 날짜를 문자열로 표현한 값 또는 정수 Unix timestamp입니다.String또는(U)Int8/16/32/64timezone— 선택 사항입니다. 반환 값의 시간대입니다.String
DateTime 값을 반환하고, 그렇지 않으면 NULL을 반환합니다. DateTime 또는 NULL
예시
사용 예시
Query
Response
Query
Response
toDateTimeOrZero
도입 버전: v1.1.0 입력 값을 DateTime 타입의 값으로 변환하지만, 잘못된 인수를 받으면 DateTime의 하한값을 반환합니다. toDateTime과 동일하지만, 잘못된 인수를 받으면 DateTime의 하한값을 반환합니다. 구문x— 날짜와 시간을 나타내는 문자열입니다.String
1970-01-01 00:00:00)을 반환합니다. DateTime
예시
사용 예시
Query
Response
toDecimal128
도입 버전: v18.12.0 입력값을 스케일이S인 Decimal(38, S) 타입의 값으로 변환합니다.
오류가 발생하면 예외를 발생시킵니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 형식의 값
- Float* 타입의 값 또는 문자열 형식의 값
- Float* 값
NaN및Inf또는 이를 문자열로 표현한 값(대소문자 구분 없음) - 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toDecimal128('0xc0fe', 1);
expr의 값이 Decimal128의 범위 (-1*10^(38 - S), 1*10^(38 - S))를 초과하면 오버플로우가 발생할 수 있습니다.
소수 부분의 초과 자릿수는 버려지며(반올림되지 않음),
정수 부분의 초과 자릿수는 예외를 발생시킵니다.Decimal(38, S) 유형의 값을 반환합니다. Decimal128(S)
예시
사용 예시
Query
Response
toDecimal128OrDefault
도입 버전: v21.11.0toDecimal128와 마찬가지로, 이 함수는 입력 값을 Decimal(38, S) 타입의 값으로 변환하지만, 오류가 발생할 경우 기본값을 반환합니다.
구문
expr— 숫자의 문자열 표현입니다.StringS— 숫자의 소수부에 허용되는 자릿수를 지정하는 0~38 범위의 스케일 매개변수입니다.UInt8default— 선택 사항입니다. Decimal128(S) 타입으로 파싱하지 못한 경우 반환할 기본값입니다.Decimal128(S)
default가 전달된 경우 해당 기본값을, 그렇지 않으면 0을 반환합니다. Decimal128(S)
예시
변환 성공
Query
Response
Query
Response
toDecimal128OrNull
도입 버전: v20.1.0 입력 값을Decimal(38, S) 타입의 값으로 변환하며, 오류가 발생하면 NULL을 반환합니다.
toDecimal128과 유사하지만, 변환 오류 시 예외를 발생시키는 대신 NULL을 반환합니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값 또는 문자열 표현.
NULL 반환):
- Float* 값
NaN및Inf또는 그 문자열 표현(대소문자 구분 없음). - 2진수 및 16진수 값의 문자열 표현.
Decimal128의 범위(-1*10^(38 - S), 1*10^(38 - S))를 초과하는 값.
NULL을 반환합니다. Decimal128(S) 또는 NULL
예시
사용 예시
Query
Response
toDecimal128OrZero
도입 버전: v20.1.0 입력값을 Decimal(38, S) 타입의 값으로 변환하며, 오류가 발생하면0을 반환합니다.
toDecimal128과 비슷하지만, 변환 오류 시 예외를 발생시키는 대신 0을 반환합니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값 또는 문자열 표현.
0 반환):
- Float* 값
NaN및Inf의 값 또는 문자열 표현(대소문자 구분 없음). - 2진수 및 16진수 값의 문자열 표현.
입력값이
Decimal128의 범위 (-1*10^(38 - S), 1*10^(38 - S))를 벗어나면 함수는 0을 반환합니다.0을 반환합니다. Decimal128(S)
예시
기본 사용법
Query
Response
toDecimal256
도입 버전: v20.8.0 입력 값을 스케일이S인 Decimal(76, S) 타입의 값으로 변환합니다. 오류가 발생하면 예외를 발생시킵니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값 또는 문자열 표현.
NaN및InfFloat* 값 또는 그 문자열 표현(대소문자 구분 없음).- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toDecimal256('0xc0fe', 1);.
expr의 값이 Decimal256의 범위 (-1*10^(76 - S), 1*10^(76 - S))를 초과하면 오버플로우가 발생할 수 있습니다.
소수 부분의 초과 자릿수는 버려지며 반올림되지 않습니다.
정수 부분의 초과 자릿수는 예외를 발생시킵니다.expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.표현식S— 숫자의 소수부가 가질 수 있는 자릿수를 지정하는 0~76 범위의 스케일 매개변수입니다.UInt8
Decimal(76, S) 타입의 값을 반환합니다. Decimal256(S)
예시
사용 예시
Query
Response
toDecimal256OrDefault
지원 버전: v21.11.0toDecimal256와 마찬가지로 이 함수는 입력 값을 Decimal(76, S) 타입 값으로 변환하며, 오류가 발생하면 기본값을 반환합니다.
구문
expr— 숫자의 문자열 표현입니다.StringS— 0에서 76 사이의 스케일 매개변수로, 숫자 소수 부분의 자릿수를 지정합니다.UInt8default— 선택 사항입니다. Decimal256(S) 타입으로 파싱하지 못한 경우 반환할 기본값입니다.Decimal256(S)
default가 전달된 경우 해당 값을, 전달되지 않은 경우 0을 반환합니다. Decimal256(S)
예시
변환 성공
Query
Response
Query
Response
toDecimal256OrNull
도입 버전: v20.8.0 입력 값을Decimal(76, S) 타입의 값으로 변환하며, 오류가 발생하면 NULL을 반환합니다.
toDecimal256와 유사하지만, 변환 오류 발생 시 예외를 발생시키는 대신 NULL을 반환합니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값 또는 문자열 표현.
NULL 반환):
- Float* 값
NaN및Inf또는 이들의 문자열 표현(대소문자 구분 없음). - 2진수 및 16진수 값의 문자열 표현.
Decimal256의 범위를 초과하는 값:(-1 * 10^(76 - S), 1 * 10^(76 - S)).
expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식입니다.표현식S— 숫자 소수부에 허용되는 자릿수를 지정하는 0~76 범위의 스케일 매개변수입니다.UInt8
NULL을 반환합니다. Decimal256(S) 또는 NULL
예시
사용 예시
Query
Response
toDecimal256OrZero
도입 버전: v20.8.0 입력 값을 Decimal(76, S) 타입의 값으로 변환하되, 오류가 발생하면0을 반환합니다.
toDecimal256와 동일하지만, 변환 오류 발생 시 예외를 발생시키는 대신 0을 반환합니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값 또는 문자열 표현.
0 반환):
- Float* 값
NaN및Inf또는 그 문자열 표현(대소문자 구분 없음). - 2진수 및 16진수 값의 문자열 표현.
입력 값이
Decimal256의 범위 (-1*10^(76 - S), 1*10^(76 - S))를 벗어나면 함수는 0을 반환합니다.0을 반환합니다. Decimal256(S)
예시
사용 예시
Query
Response
toDecimal32
도입 버전: v18.12.0 입력 값을 스케일이S인 Decimal(9, S) 타입의 값으로 변환합니다. 오류가 발생하면 예외가 발생합니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값 또는 문자열 표현.
- Float* 값
NaN및Inf의 값 또는 문자열 표현(대소문자 구분 없음). - 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toDecimal32('0xc0fe', 1);.
expr의 값이 Decimal32의 범위 (-1*10^(9 - S), 1*10^(9 - S))를 초과하면 오버플로우가 발생할 수 있습니다.
소수 부분의 초과 자릿수는 버려지며(반올림되지 않음),
정수 부분의 초과 자릿수는 예외를 발생시킵니다.Decimal(9, S) 타입의 값을 반환합니다. Decimal32(S)
예시
사용 예시
Query
Response
toDecimal32OrDefault
도입 버전: v21.11.0toDecimal32와 마찬가지로, 이 함수는 입력 값을 Decimal(9, S) 타입의 값으로 변환하며, 오류가 발생하면 기본값을 반환합니다.
구문
expr— 숫자의 문자열 표현입니다.StringS— 0에서 9 사이의 스케일 매개변수로, 숫자의 소수부에 포함될 수 있는 자릿수를 지정합니다.UInt8default— 선택 사항입니다. Decimal32(S) 타입으로 파싱하지 못한 경우 반환할 기본값입니다.Decimal32(S)
default가 전달된 경우 해당 기본값을, 전달되지 않은 경우 0을 반환합니다. Decimal32(S)
예시
변환 성공
Query
Response
Query
Response
toDecimal32OrNull
도입 버전: v20.1.0 입력값을Decimal(9, S) 타입의 값으로 변환하며, 오류가 발생하면 NULL을 반환합니다.
toDecimal32와 유사하지만, 변환 오류 시 예외를 발생시키는 대신 NULL을 반환합니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값 또는 문자열 표현.
NULL 반환):
- Float* 값
NaN및Inf의 값 또는 문자열 표현(대소문자 구분 없음). - 2진수 및 16진수 값의 문자열 표현.
Decimal32의 범위를 벗어나는 값:(-1*10^(9 - S), 1*10^(9 - S)).
expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식입니다.표현식S— 숫자의 소수부에 허용되는 자릿수를 지정하는 0~9 범위의 스케일 매개변수입니다.UInt8
NULL을 반환합니다. Decimal32(S) 또는 NULL
예시
사용 예시
Query
Response
toDecimal32OrZero
도입 버전: v20.1.0 입력 값을 Decimal(9, S) 타입의 값으로 변환하며, 오류가 발생하면0을 반환합니다.
toDecimal32와 유사하지만, 변환 오류 시 예외를 발생시키는 대신 0을 반환합니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현
- Float* 타입의 값 또는 문자열 표현
0 반환):
- Float* 값
NaN및Inf의 값 또는 문자열 표현(대소문자 구분 없음) - 2진수 및 16진수 값의 문자열 표현
입력 값이
Decimal32의 범위 (-1*10^(9 - S), 1*10^(9 - S))를 벗어나면 함수는 0을 반환합니다.expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.표현식S— 숫자의 소수 부분에 허용되는 자릿수를 지정하는 0에서 9 사이의 스케일 매개변수입니다.UInt8
0을 반환합니다. Decimal32(S)
예시
사용 예시
Query
Response
toDecimal64
도입 버전: v18.12.0 입력 값을 스케일이S인 Decimal(18, S) 타입의 값으로 변환합니다.
오류가 발생하면 예외를 발생시킵니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값 또는 문자열 표현.
- Float* 값
NaN및Inf의 값 또는 문자열 표현(대소문자 구분 없음). - 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toDecimal64('0xc0fe', 1);.
expr의 값이 Decimal64의 범위 (-1*10^(18 - S), 1*10^(18 - S))를 초과하면 오버플로우가 발생할 수 있습니다.
소수부의 초과 자릿수는 버려지며(반올림되지 않음).
정수부의 초과 자릿수는 예외를 발생시킵니다.Decimal(18, S)
예시
사용 예시
Query
Response
toDecimal64OrDefault
도입 버전: v21.11.0 이 함수는toDecimal64와 마찬가지로 입력 값을 Decimal(18, S) 타입의 값으로 변환하지만, 오류가 발생할 경우 기본값을 반환합니다.
구문
expr— 숫자를 나타내는 String 형식의 값입니다.StringS— 숫자의 소수부에 허용되는 자릿수를 지정하는 0~18 범위의 스케일 매개변수입니다.UInt8default— 선택 사항입니다. Decimal64(S) 타입으로 파싱하지 못한 경우 반환할 기본값입니다.Decimal64(S)
default가 전달된 경우 해당 값을, 그렇지 않으면 0을 반환합니다. Decimal64(S)
예시
변환 성공
Query
Response
Query
Response
toDecimal64OrNull
도입 버전: v20.1.0 입력 값을 Decimal(18, S) 타입의 값으로 변환하지만, 오류가 발생하면NULL을 반환합니다.
toDecimal64와 비슷하지만, 변환 오류가 발생할 때 예외를 발생시키는 대신 NULL을 반환합니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값 또는 문자열 표현.
NULL 반환):
NaN및Inf인 Float* 값 또는 그 문자열 표현(대소문자 구분 없음).- 2진수 및 16진수 값의 문자열 표현.
Decimal64의 범위(-1*10^(18 - S), 1*10^(18 - S))를 초과하는 값.
expr— 숫자 또는 숫자의 문자열 표현식을 반환하는 표현식입니다.표현식S— 숫자의 소수부에 허용되는 자릿수를 지정하는 0에서 18 사이의 스케일 매개변수입니다.UInt8
NULL을 반환합니다. Decimal64(S) 또는 NULL
예시
사용 예시
Query
Response
toDecimal64OrZero
도입 버전: v20.1.0 입력 값을 Decimal(18, S) 타입의 값으로 변환하되, 오류가 발생하면0을 반환합니다.
toDecimal64와 유사하지만, 변환 오류가 발생할 때 예외를 발생시키는 대신 0을 반환합니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 해당 값의 문자열 표현.
- Float* 타입의 값 또는 해당 값의 문자열 표현.
0 반환):
- Float* 타입 값
NaN및Inf또는 해당 값의 문자열 표현(대소문자 구분 없음). - 2진수 및 16진수 값의 문자열 표현.
입력 값이
Decimal64의 범위 (-1*10^(18 - S), 1*10^(18 - S))를 초과하면 함수는 0을 반환합니다.0을 반환합니다. Decimal64(S)
예시
사용 예시
Query
Response
toDecimalString
도입 버전: v23.3.0 숫자 값을 지정된 소수 자릿수를 갖는 String으로 변환합니다. 이 함수는 입력 값을 지정된 소수 자릿수로 반올림합니다. 입력 값의 소수 자릿수가 요청한 자릿수보다 적으면 결과는 지정한 소수 자릿수에 정확히 맞도록 0으로 채워집니다. 구문number— 문자열로 변환할 숫자 값입니다. 모든 숫자 타입(Int, UInt, Float, Decimal)을 사용할 수 있습니다.Int8orInt16orInt32orInt64orUInt8orUInt16orUInt32orUInt64orFloat32orFloat64orDecimalscale— 소수부에 표시할 자릿수입니다. 필요한 경우 결과는 반올림됩니다.UInt8
String
예시
숫자를 반올림하고 포맷 지정
Query
Response
Query
Response
Query
Response
toFixedString
도입 버전: v1.1.0String 인수를 FixedString(N) 타입(길이가 N으로 고정된 문자열)으로 변환합니다.
문자열의 바이트 수가 N보다 적으면 오른쪽에 null byte가 채워집니다.
문자열의 바이트 수가 N보다 많으면 예외가 발생합니다.
구문
s— 변환할 문자열입니다.StringN— 생성되는 FixedString의 길이입니다.const UInt*
FixedString(N)
예시
사용 예시
Query
Response
toFloat32
도입 버전: v1.1.0 입력값을 Float32 타입의 값으로 변환합니다. 오류가 발생하면 예외를 발생시킵니다. 지원되는 인수:- (U)Int* 타입 값.
- (U)Int8/16/32/128/256의 문자열 표현.
NaN및Inf를 포함한 Float* 타입 값.NaN및Inf를 포함한 Float*의 문자열 표현(대소문자 구분 없음).
- 이진수 및 16진수 값의 문자열 표현. 예:
SELECT toFloat32('0xc0fe');.
expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식입니다.표현식
Float32
예시
사용 예시
Query
Response
toFloat32OrDefault
도입 버전: v21.11.0toFloat32와 마찬가지로, 이 함수는 입력값을 Float32 타입의 값으로 변환하지만 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류가 발생할 때 0을 반환합니다.
구문
expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패할 경우 반환할 기본값입니다.Float32
Float32
예시
성공적인 변환
Query
Response
Query
Response
toFloat32OrNull
도입 버전: v1.1.0 입력값을 Float32 타입 값으로 변환하며, 오류가 발생하면NULL을 반환합니다.
toFloat32와 유사하지만, 변환 오류 발생 시 예외를 발생시키는 대신 NULL을 반환합니다.
지원되는 인수:
- (U)Int* 타입의 값.
- (U)Int8/16/32/128/256의 문자열 표현.
NaN및Inf를 포함한 Float* 타입의 값.NaN및Inf를 포함한 Float*의 문자열 표현(대소문자 구분 없음).
NULL 반환):
- 이진수 및 16진수 값의 문자열 표현(예:
SELECT toFloat32OrNull('0xc0fe');). - 잘못된 문자열 포맷.
x— 숫자를 문자열로 표현한 값입니다.String
NULL을 반환합니다. Float32 또는 NULL
예시
사용 예시
Query
Response
toFloat32OrZero
도입 버전: v1.1.0 입력 값을 Float32 타입의 값으로 변환하며, 오류가 발생하면0을 반환합니다.
toFloat32와 비슷하지만, 변환 오류가 발생해도 예외를 발생시키지 않고 0을 반환합니다.
관련 항목:
구문
x— 숫자를 문자열로 나타낸 값입니다.String
0을 반환합니다. Float32
예시
사용 예시
Query
Response
toFloat64
도입 버전: v1.1.0 입력값을Float64 타입의 값으로 변환합니다.
오류가 발생하는 경우 예외를 발생시킵니다.
지원되는 인수:
- (U)Int* 타입 값.
- (U)Int8/16/32/128/256의 문자열 표현.
NaN및Inf를 포함한 Float* 타입 값.NaN및Inf를 포함한 Float* 타입의 문자열 표현(대소문자 구분 없음).
- 이진수 및 16진수 값의 문자열 표현. 예:
SELECT toFloat64('0xc0fe');.
expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.표현식
Float64
예시
사용 예시
Query
Response
toFloat64OrDefault
도입 버전: v21.11.0toFloat64와 마찬가지로, 이 함수는 입력 값을 Float64 타입으로 변환하지만 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류 발생 시 0을 반환합니다.
구문
expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패할 경우 반환할 기본값입니다.Float64
Float64 타입의 값을 반환하고, 실패하면 인수로 전달된 기본값을 반환하며, 기본값이 없으면 0을 반환합니다. Float64
예시
변환 성공
Query
Response
Query
Response
toFloat64OrNull
도입 버전: v1.1.0 입력 값을 Float64 타입의 값으로 변환하며, 오류가 발생하면NULL을 반환합니다.
toFloat64와 같지만, 변환 오류가 발생했을 때 예외를 발생시키는 대신 NULL을 반환합니다.
지원되는 인수:
- (U)Int* 타입의 값.
- 문자열로 표현된 (U)Int8/16/32/128/256.
NaN및Inf를 포함한 Float* 타입의 값.NaN및Inf를 포함한 Float* 타입의 문자열 표현(대소문자 구분 없음).
NULL 반환):
- 2진수 및 16진수 값의 문자열 표현(예:
SELECT toFloat64OrNull('0xc0fe');). - 잘못된 문자열 포맷.
x— 숫자를 문자열로 표현한 값입니다.String
NULL을 반환합니다. Float64 또는 NULL
예시
사용 예시
Query
Response
toFloat64OrZero
도입 버전: v1.1.0 입력값을 Float64 타입의 값으로 변환하되, 오류가 발생하면0을 반환합니다.
toFloat64와 유사하지만, 변환 오류 시 예외를 발생시키는 대신 0을 반환합니다.
관련 항목:
구문
x— 숫자를 문자열로 표현한 값입니다.String
0을 반환합니다. Float64
예시
사용 예시
Query
Response
toInt128
도입 버전: v1.1.0 입력 값을 Int128 타입의 값으로 변환합니다. 오류가 발생하면 예외를 발생시킵니다. 이 함수는 0을 향한 반올림을 사용하므로 숫자의 소수 자릿수는 버려집니다. 지원되는 인수:- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값.
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toInt128('0xc0fe');.
입력 값을 Int128 범위 내에서 표현할 수 없으면 결과가 오버플로우 또는 언더플로우될 수 있습니다.
이는 오류로 간주되지 않습니다.
expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식입니다.표현식
Int128
예시
사용 예시
Query
Response
toInt128OrDefault
도입 버전: v21.11.0 이 함수는toInt128와 마찬가지로 입력 값을 Int128 타입의 값으로 변환하지만, 오류가 발생하면 기본값을 반환합니다.
default 값을 전달하지 않으면 오류가 발생할 때 0을 반환합니다.
구문
expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패한 경우 반환할 기본값입니다.Int128
Int128 타입의 값을 반환합니다. 실패하면 인수로 전달된 기본값을 반환하고, 기본값이 전달되지 않았으면 0을 반환합니다. Int128
예시
변환 성공
Query
Response
Query
Response
toInt128OrNull
도입 버전: v20.8.0toInt128와 마찬가지로, 이 함수는 입력값을 Int128 타입의 값으로 변환하지만, 오류가 발생하는 경우 NULL을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현(예:
SELECT toInt128OrNull('0xc0fe');).
입력값을 Int128의 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
x— 숫자를 나타내는 String입니다.String
Int128 타입의 값을 반환합니다. 변환에 실패하면 NULL을 반환합니다. Int128 또는 NULL
예시
사용 예시
Query
Response
toInt128OrZero
도입 버전: v20.8.0 입력 값을 Int128 타입으로 변환하지만, 오류가 발생한 경우0을 반환합니다.
toInt128와 비슷하지만 예외를 발생시키는 대신 0을 반환합니다.
관련 항목:
구문
0을 반환합니다. Int128
예시
사용 예시
Query
Response
Query
Response
toInt16
도입 버전: v1.1.0 입력 값을Int16 타입의 값으로 변환합니다.
오류가 발생하면 예외를 발생시킵니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 해당 값을 나타내는 문자열 표현.
- Float* 타입의 값.
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toInt16('0xc0fe');.
입력 값을 Int16의 범위로 표현할 수 없으면 결과에서 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
예:
SELECT toInt16(32768) == -32768;.이 함수는 0을 향한 반올림을 사용하므로 숫자의 소수 자릿수를 잘라냅니다.
expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식입니다.표현식
Int16
예시
사용 예시
Query
Response
toInt16OrDefault
도입 버전: v21.11.0toInt16와 마찬가지로, 이 함수는 입력값을 Int16 타입의 값으로 변환하지만 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류가 발생할 때 0을 반환합니다.
구문
expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패할 경우 반환할 기본값입니다.Int16
Int16
예시
성공적인 변환
Query
Response
Query
Response
toInt16OrNull
도입 버전: v1.1.0toInt16와 마찬가지로, 이 함수는 입력값을 Int16 타입의 값으로 변환하며, 오류가 발생하면 NULL을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toInt16OrNull('0xc0fe');.
입력값을 Int16 범위 내에서 표현할 수 없으면 결과에서 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
x— 숫자를 문자열로 표현한 값입니다.String
Int16 유형의 값을 반환합니다. 변환에 실패하면 NULL을 반환합니다. Int16 또는 NULL
예시
사용 예시
Query
Response
toInt16OrZero
도입 버전: v1.1.0toInt16와 마찬가지로, 이 함수는 입력 값을 Int16 타입의 값으로 변환하지만, 오류가 발생하면 0을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
0 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toInt16OrZero('0xc0fe');.
입력 값을 Int16의 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
x— 숫자의 문자열 표현입니다.String
Int16 타입의 값을 반환하며, 변환에 실패하면 0을 반환합니다. Int16
예시
사용 예시
Query
Response
toInt256
도입 버전: v1.1.0 입력 값을 Int256 타입의 값으로 변환합니다. 오류가 발생한 경우 예외를 발생시킵니다. 이 함수는 0을 향한 반올림을 수행하므로 숫자의 소수 자릿수를 잘라냅니다. 지원되는 인수:- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값.
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현(예:
SELECT toInt256('0xc0fe');).
입력 값을 Int256 범위 내에 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식입니다.표현식
Int256
예시
사용 예시
Query
Response
toInt256OrDefault
도입 버전: v21.11.0toInt256와 마찬가지로, 이 함수는 입력 값을 Int256 타입으로 변환하지만 오류가 발생하면 기본값을 반환합니다.
default 값을 전달하지 않으면 오류 발생 시 0을 반환합니다.
구문
expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패할 경우 반환할 기본값입니다.Int256
Int256 타입의 값을 반환합니다. 실패하면 default가 전달된 경우 해당 기본값을 반환하고, 전달되지 않은 경우 0을 반환합니다. Int256
예시
변환 성공
Query
Response
Query
Response
toInt256OrNull
도입 버전: v20.8.0toInt256와 마찬가지로, 이 함수는 입력값을 Int256 타입 값으로 변환하지만 오류가 발생한 경우 NULL을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toInt256OrNull('0xc0fe');.
입력값을 Int256의 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
x— 숫자의 문자열 표현입니다.String
NULL을 반환합니다. Int256 또는 NULL
예시
사용 예시
Query
Response
toInt256OrZero
도입 버전: v20.8.0 입력값을 Int256 타입으로 변환하며, 오류가 발생하면0을 반환합니다.
toInt256와 유사하지만, 예외를 발생시키는 대신 0을 반환합니다.
관련 항목:
구문
0을 반환합니다. Int256
예시
사용 예시
Query
Response
Query
Response
toInt32
도입 버전: v1.1.0 입력값을Int32 타입의 값으로 변환합니다.
오류가 발생하면 예외를 발생시킵니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 해당 타입의 문자열 표현.
- Float* 타입의 값.
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현(예:
SELECT toInt32('0xc0fe');).
입력값을 Int32의 범위 내에서 표현할 수 없으면 결과는 오버플로우 또는 언더플로우될 수 있습니다.
이는 오류로 간주되지 않습니다.
예시:
SELECT toInt32(2147483648) == -2147483648;이 함수는 0을 향한 반올림을 사용하므로 숫자의 소수 자릿수를 버립니다.
expr— 숫자 또는 숫자를 문자열로 나타낸 값을 반환하는 표현식입니다.표현식
Int32
예시
사용 예시
Query
Response
toInt32OrDefault
도입 버전: v21.11.0toInt32와 마찬가지로, 이 함수는 입력 값을 Int32 타입의 값으로 변환하지만 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류가 발생한 경우 0을 반환합니다.
구문
expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패한 경우 반환할 기본값입니다.Int32
Int32 타입의 값을 반환합니다. 실패하면 default가 전달된 경우 해당 값을, 그렇지 않으면 0을 반환합니다. Int32
예시
변환 성공
Query
Response
Query
Response
toInt32OrNull
도입 버전: v1.1.0toInt32와 마찬가지로, 이 함수는 입력값을 Int32 타입의 값으로 변환하지만 오류가 발생할 경우 NULL을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현(예:
SELECT toInt32OrNull('0xc0fe');).
입력값을 Int32의 범위 내에서 표현할 수 없는 경우 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
x— 숫자의 문자열 표현입니다.String
Int32 타입의 값을 반환합니다. 변환에 실패하면 NULL을 반환합니다. Int32 또는 NULL
예시
사용 예시
Query
Response
toInt32OrZero
도입 버전: v1.1.0toInt32와 마찬가지로, 이 함수는 입력값을 Int32 타입의 값으로 변환하지만 오류 시 0을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
0 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현(예:
SELECT toInt32OrZero('0xc0fe');).
입력값을 Int32의 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
x— 숫자를 문자열로 나타낸 값입니다.String
0을 반환합니다. Int32
예시
사용 예시
Query
Response
toInt64
도입 버전: v1.1.0 입력 값을Int64 타입의 값으로 변환합니다.
오류가 발생하면 예외를 발생시킵니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 해당 값의 문자열 표현.
- Float* 타입의 값.
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toInt64('0xc0fe');.
입력 값을 Int64 범위 내에서 표현할 수 없으면 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
예시:
SELECT toInt64(9223372036854775808) == -9223372036854775808;이 함수는 0을 향한 반올림을 사용하므로 숫자의 소수 자릿수를 잘라냅니다.
expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식입니다. 지원: (U)Int* 타입의 값 또는 해당 값의 문자열 표현, Float* 타입의 값. 미지원: NaN 및 Inf를 포함한 Float* 값의 문자열 표현, 2진수 및 16진수 값의 문자열 표현.표현식
Int64
예시
사용 예시
Query
Response
toInt64OrDefault
도입 버전: v21.11.0toInt64와 마찬가지로, 이 함수는 입력 값을 Int64 타입의 값으로 변환하지만 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류 발생 시 0을 반환합니다.
구문
expr— 숫자 또는 숫자를 문자열로 나타낸 값을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패할 경우 반환할 기본값입니다.Int64
Int64 타입의 값을 반환하고, 실패하면 인수로 전달된 기본값을 반환하며, 기본값이 없으면 0을 반환합니다. Int64
예시
변환 성공
Query
Response
Query
Response
toInt64OrNull
도입 버전: v1.1.0toInt64와 마찬가지로, 이 함수는 입력값을 Int64 타입의 값으로 변환하지만, 오류가 발생한 경우 NULL을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toInt64OrNull('0xc0fe');.
입력값을 Int64의 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
x— 숫자의 문자열 표현입니다.String
Int64 타입의 값을 반환하며, 변환에 실패하면 NULL을 반환합니다. Int64 또는 NULL
예시
사용 예시
Query
Response
toInt64OrZero
도입 버전: v1.1.0 입력 값을 Int64 타입으로 변환하며, 오류가 발생하면0을 반환합니다.
toInt64와 같지만, 예외를 발생시키는 대신 0을 반환합니다.
관련 항목:
구문
0을 반환합니다. Int64
예시
사용 예시
Query
Response
Query
Response
toInt8
Introduced in: v1.1.0 입력값을Int8 타입의 값으로 변환합니다.
오류가 발생하면 예외를 발생시킵니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값.
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현(예:
SELECT toInt8('0xc0fe');).
입력값을 Int8 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
예시:
SELECT toInt8(128) == -128;.이 함수는 rounding towards zero 방식을 사용하므로 숫자의 소수 자릿수를 버립니다.
expr— 숫자 또는 숫자를 나타내는 문자열을 반환하는 표현식입니다.표현식
Int8
예시
사용 예시
Query
Response
toInt8OrDefault
도입 버전: v21.11.0toInt8와 마찬가지로, 이 함수는 입력값을 Int8 타입으로 변환하지만 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류가 발생할 때 0을 반환합니다.
구문
expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패할 경우 반환할 기본값입니다.Int8
default가 전달된 경우 해당 기본값을 반환하고, 전달되지 않은 경우 0을 반환합니다. Int8
예시
성공적인 변환
Query
Response
Query
Response
toInt8OrNull
도입 버전: v1.1.0toInt8와 마찬가지로, 이 함수는 입력값을 Int8 타입의 값으로 변환하지만, 오류가 발생하면 NULL을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현(예:
SELECT toInt8OrNull('0xc0fe');).
입력값을 Int8의 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
x— 숫자의 문자열 표현입니다.String
Int8 타입의 값을 반환합니다. 변환에 실패하면 NULL을 반환합니다. Int8 또는 NULL
예시
사용 예시
Query
Response
toInt8OrZero
도입 버전: v1.1.0toInt8와 마찬가지로, 이 함수는 입력 값을 Int8 타입의 값으로 변환하지만, 오류가 발생하면 0을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
0 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toInt8OrZero('0xc0fe');.
입력 값을 Int8 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
x— 숫자의 문자열 표현입니다.String
Int8 타입의 값을 반환합니다. 변환에 실패하면 0을 반환합니다. Int8
예시
사용 예시
Query
Response
toInterval
도입 버전: v25.4.0 숫자 값과 단위 문자열을 사용해 인터벌 값을 생성합니다. 이 함수는 단위를 문자열 인수로 지정해, 단일 함수로 다양한 타입의 인터벌(초, 분, 시간, 일, 주, 월, 분기, 연도)을 생성할 수 있도록 합니다. 단위 문자열은 대소문자를 구분하지 않습니다. 이 함수는toIntervalSecond, toIntervalMinute, toIntervalDay 등의 타입별 함수를 호출하는 것과 동일하지만,
단위를 문자열 매개변수로 동적으로 지정할 수 있습니다.
구문
value— 단위의 개수를 나타내는 숫자 값입니다. 모든 숫자 타입이 될 수 있습니다.Int8또는Int16또는Int32또는Int64또는UInt8또는UInt16또는UInt32또는UInt64또는Float32또는Float64unit— 시간 단위입니다. 상수 문자열이어야 합니다. 유효한 값은 ‘nanosecond’, ‘microsecond’, ‘millisecond’, ‘second’, ‘minute’, ‘hour’, ‘day’, ‘week’, ‘month’, ‘quarter’, ‘year’입니다.String
Interval
예시
서로 다른 단위의 인터벌 만들기
Query
Response
Query
Response
Query
Response
toIntervalDay
도입 버전: v1.1.0 데이터 타입IntervalDay의 n일 인터벌을 반환합니다.
구문
n일의 Interval을 반환합니다.
예시
사용 예시
Query
Response
toIntervalHour
도입 버전: v1.1.0 데이터 타입IntervalHour의 n시간 인터벌을 반환합니다.
구문
n시간 인터벌을 반환합니다. Interval
예시
사용 예시
Query
Response
toIntervalMicrosecond
도입 버전: v22.6.0n 마이크로초를 나타내는 IntervalMicrosecond 데이터 타입의 인터벌을 반환합니다.
구문
n 마이크로초를 나타내는 인터벌을 반환합니다. Interval
예시
사용 예시
Query
Response
toIntervalMillisecond
도입 버전: v22.6.0 데이터 타입 IntervalMillisecond의n밀리초 인터벌을 반환합니다.
구문
n 밀리초의 인터벌을 반환합니다. Interval
예시
사용 예시
Query
Response
toIntervalMinute
도입 버전: v1.1.0 데이터 타입(data type)IntervalMinute의 n분에 해당하는 인터벌을 반환합니다.
구문
n분의 인터벌을 반환합니다. Interval
예시
사용 예시
Query
Response
toIntervalMonth
도입 버전: v1.1.0 데이터 타입IntervalMonth의 n개월을 나타내는 인터벌을 반환합니다.
구문
n개월에 해당하는 인터벌을 반환합니다. Interval
예시
사용 예시
Query
Response
toIntervalNanosecond
도입 버전: v22.6.0 데이터 타입IntervalNanosecond의 n나노초 인터벌을 반환합니다.
구문
n나노초의 인터벌을 반환합니다. Interval
예시
사용 예시
Query
Response
toIntervalQuarter
도입 버전: v1.1.0 데이터 타입IntervalQuarter의 n개 분기 인터벌을 반환합니다.
구문
n개 분기를 나타내는 인터벌을 반환합니다. Interval
예시
사용 예시
Query
Response
toIntervalSecond
v1.1.0에 도입되었습니다. 데이터 타입IntervalSecond의 n초 인터벌을 반환합니다.
구문
n초의 인터벌을 반환합니다. Interval
예시
사용 예시
Query
Response
toIntervalWeek
도입 버전: v1.1.0IntervalWeek 데이터 타입의 n주 인터벌을 반환합니다.
구문
n주를 나타내는 인터벌을 반환합니다. Interval
예시
사용 예시
Query
Response
toIntervalYear
도입 버전: v1.1.0 데이터 타입IntervalYear의 n년 인터벌을 반환합니다.
구문
n년을 나타내는 인터벌을 반환합니다. Interval
예시
사용 예시
Query
Response
toLowCardinality
도입 버전: v18.12.0 입력 인수를 동일한 데이터 타입의 LowCardinality 버전으로 변환합니다. 구문expr— 지원되는 데이터 타입 중 하나의 값을 생성하는 표현식입니다.String또는FixedString또는Date또는DateTime또는(U)Int*또는Float*
LowCardinality 데이터 타입으로 변환한 값을 반환합니다. LowCardinality
예시
사용 예시
Query
Response
toString
도입 버전: v1.1.0 값을 문자열 표현으로 변환합니다. DateTime 인수의 경우, 시간대 이름이 포함된 두 번째 String 인수를 받을 수 있습니다. 구문String
예시
사용 예시
Query
Response
toStringCutToZero
도입 버전: v1.1.0 String 또는 FixedString 인수를 받아, 원본 문자열을 첫 번째 널 바이트(널 바이트)에서 잘라낸 복사본을 담은 String을 반환합니다. 널 바이트(\0)는 문자열 종료자로 간주됩니다. 이 함수는 널 바이트가 의미 있는 콘텐츠의 끝을 나타내는 C 스타일 문자열이나 이진 데이터를 처리할 때 유용합니다. 구문s— 처리할String또는FixedString입니다.String또는FixedString
String을 반환합니다. String
예시
사용 예시
Query
Response
toTime
도입 버전: v25.5.0 입력 값을 Time 타입으로 변환합니다. String, FixedString, DateTime, DateTime64, Time64 또는 자정 이후 경과한 초를 나타내는 숫자 타입에서 변환할 수 있습니다. 타입 범위(-999:59:59999:59:59, 즉 -35999993599999초)를 벗어나는 숫자 값은 범위 경계값으로 포화되며, 유한하지 않은 부동 소수점 값(NaN, inf, -inf)은 변환할 수 없어 예외가 발생합니다.
Time64 값은 음의 무한대 방향으로 정수 초 단위로 내림되며 동일한 범위로 포화됩니다.
v25.5 이전의
toTime은 시간 구성 요소를 유지하면서 시간 정보를 포함한 날짜를 고정 날짜(1970-01-02)로 변환하는 다른 함수였습니다.
해당 함수는 현재도 toTimeWithFixedDate라는 이름으로 사용할 수 있습니다.use_legacy_to_time을 1로 설정하면 toTime이라는 이름도 레거시
함수에 바인딩된 상태로 유지됩니다. 즉, toTime 호출은 여기에서 설명한 변환 함수 대신 toTimeWithFixedDate로 해석됩니다.
설정이 활성화되어 있는 동안에는 CAST(x AS Time) 또는 x::Time을 사용하여 Time 타입으로 변환하십시오.
이 설정은 v26.7부터 기본값이 0이지만, v25.6부터 v26.6까지는 기본값이 1이었으므로 아래 예시에서는 이를 명시적으로 설정합니다.x— 변환할 입력 값입니다.String또는FixedString또는DateTime또는DateTime64또는Time64또는(U)Int*또는BFloat16또는Float*
Time
예시
DateTime64를 Time으로 변환
Query
Response
Query
Response
Query
Response
toTime64
도입 버전: v25.6.0 입력 값을 Time64 타입으로 변환합니다. String, FixedString, DateTime64 또는 자정 이후 경과한 초를 나타내는 숫자 타입에서 변환할 수 있습니다. 시간 값에 대해 최대scale자리의 소수 자릿수까지 초 미만 정밀도를 지원합니다.
구문
x— 변환할 입력 값입니다.String또는FixedString또는DateTime64또는(U)Int*또는Float*scale— 결과Time64의 정밀도(소수 자릿수,0–9)입니다.(U)Int*
scale로 변환된 값을 반환합니다. Time64
예시
String을 Time64로 변환
Query
Response
Query
Response
Query
Response
toTime64OrNull
도입 버전: v25.6.0 입력 값을Time64 타입의 값으로 변환하며, 오류가 발생하면 NULL을 반환합니다.
toTime64와 동일하지만, 변환 오류 시 예외를 발생시키는 대신 NULL을 반환합니다.
관련 항목:
구문
Time64 값을 반환하고, 그렇지 않으면 NULL을 반환합니다. Time64 또는 NULL
예시
사용 예시
Query
Response
toTime64OrZero
도입 버전: v25.6.0 입력 값을Time64 타입의 값으로 변환하지만, 유효하지 않은 인수를 받으면 0에 해당하는 Time64 값(00:00:00)을 반환합니다.
toTime64와 동일하지만, 유효하지 않은 인수를 받으면 0에 해당하는 Time64 값을 반환합니다.
관련 항목
구문
Time64 값(00:00:00)을 반환합니다. Time64
예시
사용 예시
Query
Response
toTimeOrNull
도입 버전: v25.5.0 입력값을 Time 타입의 값으로 변환하며, 오류가 발생한 경우NULL을 반환합니다.
toTime과 비슷하지만, 변환 오류 시 예외를 발생시키는 대신 NULL을 반환합니다.
관련 항목:
구문
x— 시간의 문자열 표현입니다.String
NULL을 반환합니다. Time 또는 NULL
예시
사용 예시
Query
Response
toTimeOrZero
도입 버전: v25.5.0 입력 값을 Time 타입의 값으로 변환하며, 오류가 발생하면00:00:00을 반환합니다.
toTime과 같지만, 변환 오류 시 예외를 발생시키는 대신 00:00:00을 반환합니다.
구문
x— 시간의 문자열 표현입니다.String
Time 값을 반환하며, 그렇지 않으면 00:00:00을 반환합니다. Time
예시
사용 예시
Query
Response
toUInt128
도입 버전: v1.1.0 입력 값을UInt128 타입의 값으로 변환합니다.
오류가 발생하면 예외를 발생시킵니다.
이 함수는 0 쪽으로 반올림을 수행하므로 숫자의 소수 자릿수는 잘려 나갑니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값.
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt128('0xc0fe');.
입력 값을 UInt128의 범위 내에서 표현할 수 없으면 결과가 오버플로우 또는 언더플로우될 수 있습니다.
이는 오류로 간주되지 않습니다.
expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.표현식
UInt128
예시
사용 예시
Query
Response
toUInt128OrDefault
도입 버전: v21.11.0toUInt128와 마찬가지로, 이 함수는 입력 값을 UInt128 타입의 값으로 변환하지만 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류가 발생할 때 0을 반환합니다.
구문
expr— 숫자 또는 숫자를 나타내는 문자열 표현을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패하면 반환할 기본값입니다.UInt128
default가 전달된 경우 해당 기본값을 반환하고, 그렇지 않으면 0을 반환합니다. UInt128
예시
변환 성공
Query
Response
Query
Response
toUInt128OrNull
도입 버전: v21.6.0 이 함수는toUInt128와 마찬가지로 입력 값을 UInt128 타입의 값으로 변환하지만, 오류가 발생하면 NULL을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt128OrNull('0xc0fe');.
입력 값을
UInt128의 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자를 문자열로 표현한 값입니다.String
UInt128 유형의 값을 반환하며, 변환에 실패하면 NULL을 반환합니다. UInt128 또는 NULL
예시
사용 예시
Query
Response
toUInt128OrZero
도입 버전: v1.1.0toUInt128와 마찬가지로, 이 함수는 입력 값을 UInt128 타입의 값으로 변환하며, 오류가 발생하면 0을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
0 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt128OrZero('0xc0fe');.
입력 값을
UInt128의 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자를 문자열로 표현한 값입니다.String
UInt128 타입의 값을 반환합니다. 변환에 실패하면 0을 반환합니다. UInt128
예시
사용 예시
Query
Response
toUInt16
도입 버전: v1.1.0 입력 값을UInt16 타입의 값으로 변환합니다.
오류가 발생하면 예외를 발생시킵니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 해당 값의 문자열 표현.
- Float* 타입의 값.
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt16('0xc0fe');.
입력 값을
UInt16의 표현 범위 내에 나타낼 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
예: SELECT toUInt16(65536) == 0;.이 함수는 0 방향으로 버림 방식을 사용하므로 숫자의 소수 자릿수를 버립니다.
expr— 숫자 또는 숫자를 나타내는 문자열을 반환하는 표현식입니다.표현식
UInt16
예시
사용 예시
Query
Response
toUInt16OrDefault
도입 버전: v21.11.0toUInt16와 마찬가지로, 이 함수는 입력 값을 UInt16 타입으로 변환하지만 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류가 발생할 때 0이 반환됩니다.
구문
expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패할 경우 반환할 기본값입니다.UInt16
default가 전달되면 해당 기본값을 반환하고, 그렇지 않으면 0을 반환합니다. UInt16
예시
변환 성공
Query
Response
Query
Response
toUInt16OrNull
도입 버전: v1.1.0toUInt16와 마찬가지로, 이 함수는 입력값을 UInt16 타입의 값으로 변환하지만 오류가 발생하면 NULL을 반환합니다.
지원되는 인수:
- (U)Int8/16/32/128/256의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현(예:
SELECT toUInt16OrNull('0xc0fe');).
입력값이
UInt16의 범위 내에서 표현될 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자를 문자열로 표현한 값입니다.String
UInt16 타입의 값을 반환하고, 변환에 실패하면 NULL을 반환합니다. UInt16 또는 NULL
예시
사용 예시
Query
Response
toUInt16OrZero
도입 버전: v1.1.0toUInt16와 마찬가지로, 이 함수는 입력 값을 UInt16 타입의 값으로 변환하지만, 오류가 발생한 경우 0을 반환합니다.
지원되는 인수:
- (U)Int8/16/32/128/256의 문자열 표현.
0 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt16OrZero('0xc0fe');.
입력 값을
UInt16의 범위 안에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자를 나타내는 String입니다.String
0을 반환합니다. UInt16
예시
사용 예시
Query
Response
toUInt256
도입 버전: v1.1.0 입력 값을 UInt256 타입의 값으로 변환합니다. 오류 시 예외가 발생합니다. 이 함수는 0 방향으로 반올림하므로 숫자의 소수 자릿수는 버려집니다. 지원되는 인수:- (U)Int* 타입의 값 또는 문자열 표현.
- Float* 타입의 값.
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현(예:
SELECT toUInt256('0xc0fe');).
입력 값을 UInt256 범위 내에서 표현할 수 없으면 결과에서 오버플로 또는 언더플로가 발생합니다.
이는 오류로 간주되지 않습니다.
expr— 숫자 또는 숫자를 문자열로 나타낸 값을 반환하는 표현식입니다.표현식
UInt256
예시
사용 예시
Query
Response
toUInt256OrDefault
도입 버전: v21.11.0 이 함수는toUInt256와 마찬가지로 입력값을 UInt256 타입의 값으로 변환하지만, 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류가 발생한 경우 0을 반환합니다.
구문
expr— 숫자 또는 숫자를 나타내는 문자열을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패한 경우 반환할 기본값입니다.UInt256
default가 전달된 경우 해당 기본값을 반환하고, 그렇지 않으면 0을 반환합니다. UInt256
예시
성공적으로 변환된 경우
Query
Response
Query
Response
toUInt256OrNull
도입 버전: v20.8.0toUInt256와 마찬가지로, 이 함수는 입력 값을 UInt256 유형의 값으로 변환하지만, 오류가 발생하면 NULL을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt256OrNull('0xc0fe');.
입력 값을
UInt256의 범위 내 값으로 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자의 String 형식 표현입니다.String
UInt256 유형의 값을 반환합니다. 변환에 실패하면 NULL을 반환합니다. UInt256 또는 NULL
예시
사용 예시
Query
Response
toUInt256OrZero
도입 버전: v20.8.0toUInt256와 마찬가지로, 이 함수는 입력 값을 UInt256 타입의 값으로 변환하지만, 오류가 발생하는 경우 0을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현입니다.
0 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현입니다.- 2진수 및 16진수 값의 문자열 표현입니다. 예:
SELECT toUInt256OrZero('0xc0fe');.
입력 값을
UInt256의 범위 내에서 표현할 수 없는 경우 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자를 나타내는 문자열입니다.String
0을 반환합니다. UInt256
예시
사용 예시
Query
Response
toUInt32
v1.1.0에서 도입되었습니다. 입력값을UInt32 타입의 값으로 변환합니다.
오류가 발생하면 예외를 발생시킵니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 해당 값의 문자열 표현
- Float* 타입의 값
NaN및Inf를 포함한 Float* 값의 문자열 표현- 2진수 및 16진수 값의 문자열 표현(예:
SELECT toUInt32('0xc0fe');)
입력값을
UInt32 범위 내에서 표현할 수 없으면 결과가 오버플로되거나 언더플로될 수 있습니다.
이는 오류로 간주되지 않습니다.
예: SELECT toUInt32(4294967296) == 0;이 함수는 0 방향으로 반올림을 사용하므로 숫자의 소수 자릿수는 버려집니다.
expr— 숫자 또는 숫자를 문자열로 표현한 값을 반환하는 표현식입니다.표현식
UInt32
예시
사용 예시
Query
Response
toUInt32OrDefault
도입 버전: v21.11.0 이 함수는toUInt32와 마찬가지로 입력 값을 UInt32 유형의 값으로 변환하지만, 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류 발생 시 0을 반환합니다.
구문
expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패할 경우 반환할 기본값입니다.UInt32
default가 전달된 경우 해당 기본값을 반환하고, 그렇지 않으면 0을 반환합니다. UInt32
예시
성공적인 변환
Query
Response
Query
Response
toUInt32OrNull
도입 버전: v1.1.0toUInt32와 마찬가지로, 이 함수는 입력 값을 UInt32 유형의 값으로 변환하지만 오류가 발생하면 NULL을 반환합니다.
지원되는 인수:
- (U)Int8/16/32/128/256의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt32OrNull('0xc0fe');.
입력 값을
UInt32의 범위 내에서 표현할 수 없는 경우 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자의 문자열 표현입니다.String
UInt32 유형의 값을 반환합니다. 변환에 실패하면 NULL을 반환합니다. UInt32 또는 NULL
예시
사용 예시
Query
Response
toUInt32OrZero
도입 버전: v1.1.0toUInt32와 마찬가지로, 이 함수는 입력 값을 UInt32 타입의 값으로 변환하지만, 오류가 발생하면 0을 반환합니다.
지원되는 인수:
- (U)Int8/16/32/128/256의 문자열 표현.
0 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt32OrZero('0xc0fe');.
입력 값을
UInt32 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자의 문자열 표현입니다.String
UInt32 타입의 값을 반환하며, 변환에 실패하면 0을 반환합니다. UInt32
예시
사용 예시
Query
Response
toUInt64
도입 버전: v1.1.0 입력값을UInt64 타입의 값으로 변환합니다.
오류 시 예외가 발생합니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 해당 값의 문자열 표현.
- Float* 타입의 값.
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt64('0xc0fe');.
입력값을
UInt64의 범위 내에서 표현할 수 없으면 결과에 오버플로 또는 언더플로가 발생합니다.
이는 오류로 간주되지 않습니다.
예시: SELECT toUInt64(18446744073709551616) == 0;이 함수는 0 방향으로 반올림을 사용하므로 숫자의 소수 자릿수를 버립니다.
expr— 숫자 또는 숫자를 문자열로 나타낸 값을 반환하는 표현식입니다.표현식
UInt64
예시
사용 예시
Query
Response
toUInt64OrDefault
도입 버전: v21.11.0 이 함수는toUInt64와 마찬가지로 입력 값을 UInt64 타입의 값으로 변환하지만, 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류 발생 시 0을 반환합니다.
구문
expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 성공하지 못한 경우 반환할 기본값입니다.UInt64
default가 전달된 경우 해당 기본값을, 그렇지 않으면 0을 반환합니다. UInt64
예시
변환 성공
Query
Response
Query
Response
toUInt64OrNull
도입 버전: v1.1.0toUInt64와 마찬가지로, 이 함수는 입력 값을 UInt64 유형의 값으로 변환하지만, 오류가 발생하면 NULL을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt64OrNull('0xc0fe');.
입력 값을
UInt64의 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자를 나타내는 문자열입니다.String
UInt64 유형의 값을 반환합니다. 변환에 실패하면 NULL을 반환합니다. UInt64 또는 NULL
예시
사용 예시
Query
Response
toUInt64OrZero
도입 버전: v1.1.0 이 함수는toUInt64와 마찬가지로 입력값을 UInt64 타입의 값으로 변환하지만, 오류가 발생하면 0을 반환합니다.
지원되는 인수:
- (U)Int*의 문자열 표현.
0 반환):
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt64OrZero('0xc0fe');.
입력값을
UInt64 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자의 문자열 표현입니다.String
UInt64 타입의 값을 반환합니다. 변환에 실패하면 0을 반환합니다. UInt64
예시
사용 예시
Query
Response
toUInt8
도입 버전: v1.1.0 입력값을UInt8 타입의 값으로 변환합니다.
오류가 발생하면 예외가 발생합니다.
지원되는 인수:
- (U)Int* 타입의 값 또는 해당 값의 문자열 표현.
- Float* 타입의 값.
NaN및Inf를 포함한 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt8('0xc0fe');.
입력값을 UInt8 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.
예:
SELECT toUInt8(256) == 0;.이 함수는 0 방향으로 반올림을 사용하므로 숫자의 소수 자릿수를 버립니다.
expr— 숫자 또는 숫자를 문자열로 나타낸 값을 반환하는 표현식입니다.표현식
UInt8
예시
사용 예시
Query
Response
toUInt8OrDefault
도입 버전: v21.11.0toUInt8와 마찬가지로, 이 함수는 입력 값을 UInt8 타입의 값으로 변환하지만 오류가 발생하면 기본값을 반환합니다.
default 값이 전달되지 않으면 오류 발생 시 0을 반환합니다.
구문
expr— 숫자 또는 숫자의 문자열 표현을 반환하는 표현식입니다.String또는(U)Int*또는Float*default— 선택 사항입니다. 파싱에 실패할 경우 반환할 기본값입니다.UInt8
UInt8 타입의 값을 반환하고, 실패하면 전달된 기본값을 반환하며, 기본값이 없으면 0을 반환합니다. UInt8
예시
성공적으로 변환된 경우
Query
Response
Query
Response
toUInt8OrNull
도입 버전: v1.1.0 이 함수는toUInt8와 마찬가지로 입력 값을 UInt8 유형의 값으로 변환하지만, 오류가 발생하면 NULL을 반환합니다.
지원되는 인수:
- (U)Int8/16/32/128/256의 문자열 표현.
NULL 반환):
NaN및Inf를 포함한 일반 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt8OrNull('0xc0fe');.
입력 값을
UInt8 범위 내에서 표현할 수 없으면 결과에 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자를 나타내는 문자열 표현입니다.String
NULL을 반환합니다. UInt8 또는 NULL
예시
사용 예시
Query
Response
toUInt8OrZero
도입 버전: v1.1.0 이 함수는toUInt8와 마찬가지로 입력 값을 UInt8 타입의 값으로 변환하지만, 오류가 발생한 경우에는 0을 반환합니다.
지원되는 인수:
- (U)Int8/16/32/128/256의 문자열 표현.
0 반환):
NaN및Inf를 포함한 일반 Float* 값의 문자열 표현.- 2진수 및 16진수 값의 문자열 표현. 예:
SELECT toUInt8OrZero('0xc0fe');.
입력 값을
UInt8의 범위 내에서 표현할 수 없으면 결과에서 오버플로우 또는 언더플로우가 발생합니다.
이는 오류로 간주되지 않습니다.x— 숫자의 문자열 표현입니다.String
0을 반환합니다. UInt8
예시
사용 예시
Query
Response
toUUID
도입 버전: v1.1.0 String 값을 UUID로 변환합니다. 구문string— 문자열 형식의 UUID입니다.String또는FixedString
UUID
예시
사용 예시
Query
Response
toUUIDOrZero
도입 버전: v20.12.0 입력 값을 UUID 타입의 값으로 변환하지만, 오류가 발생하는 경우 0 UUID를 반환합니다.toUUID와 유사하지만, 변환 오류 시 예외를 발생시키는 대신 0 UUID(00000000-0000-0000-0000-000000000000)를 반환합니다.
지원되는 인수:
- 표준 포맷(8-4-4-4-12개의 16진수 숫자)인 UUID의 문자열 표현
- 하이픈이 없는 UUID의 문자열 표현(32개의 16진수 숫자)
- 잘못된 문자열 포맷
- 문자열이 아닌 타입
x— UUID를 문자열로 표현한 값입니다.String
00000000-0000-0000-0000-000000000000)를 반환합니다. UUID
예시
사용 예시
Query
Response
toUnixTimestamp64Micro
도입 버전: v20.5.0DateTime64를 고정된 마이크로초 정밀도의 Int64 값으로 변환합니다.
입력 값은 정밀도에 따라 적절히 확대되거나 축소됩니다.
출력 값은 입력 값의 시간대가 아니라 UTC를 기준으로 합니다.
value— 임의의 정밀도를 갖는 DateTime64 값입니다.DateTime64
Int64
예시
사용 예시
Query
Response
toUnixTimestamp64Milli
도입 버전: v20.5.0DateTime64를 고정된 밀리초 정밀도를 가진 Int64 값으로 변환합니다.
입력 값은 정밀도에 따라 적절히 확대되거나 축소됩니다.
출력 값은 입력 값의 시간대가 아니라 UTC를 기준으로 합니다.
value— 임의의 정밀도를 지원하는 DateTime64 값입니다.DateTime64
Int64
예시
사용 예시
Query
Response
toUnixTimestamp64Nano
도입 버전: v20.5.0DateTime64를 고정된 나노초 정밀도의 Int64 값으로 변환합니다.
입력 값은 정밀도에 따라 적절히 확대되거나 축소됩니다.
출력 값은 입력 값의 시간대가 아니라 UTC를 기준으로 합니다.
value— 임의 정밀도의 DateTime64 값.DateTime64
Int64
예시
사용 예시
Query
Response
toUnixTimestamp64Second
도입 버전: v24.12.0DateTime64를 초 단위의 고정 정밀도를 갖는 Int64 값으로 변환합니다.
입력 값은 정밀도에 따라 적절히 스케일업 또는 스케일다운됩니다.
출력 값은 입력 값의 시간대가 아니라 UTC를 기준으로 합니다.
value— 임의의 정밀도를 갖는 DateTime64 값입니다.DateTime64
Int64
예시
사용 예시
Query
Response