UUIDv7 생성
unix_ts_ms)에서 카운터는 임의의 값으로 시작하며, 타임스탬프가 바뀔 때까지 새 UUID가 생성될 때마다 1씩 증가합니다. 카운터에 오버플로우가 발생하면 타임스탬프 필드는 1 증가하고, 카운터는 새로운 임의의 시작 값으로 재설정됩니다.
UUID 생성 함수는 동시에 실행되는 스레드 및 쿼리의 모든 함수 호출에 걸쳐, 동일한 타임스탬프 내의 카운터 필드가 단조 증가하도록 보장합니다.
Snowflake ID 생성
unix_ts_ms)에 대해 카운터는 0에서 시작하며, 타임스탬프가 바뀔 때까지 새 Snowflake ID가 생성될 때마다 1씩 증가합니다. 카운터에 오버플로우가 발생하면 타임스탬프 필드가 1 증가하고 카운터는 0으로 재설정됩니다.
생성된 Snowflake ID는 UNIX epoch 1970-01-01을 기준으로 합니다. Snowflake ID의 epoch에 대한 표준이나 권고는 없지만, 다른 시스템의 구현은 서로 다른 epoch를 사용할 수 있습니다. 예를 들어 Twitter/X는 2010-11-04, Mastodon은 2015-01-01을 사용합니다.
UUIDNumToString
variant로 포맷을 지정할 수 있습니다(기본값은 Big-endian). 텍스트 포맷의 36자 문자열을 반환합니다.
구문
binary— UUID의 이진 표현입니다.FixedString(16)variant— RFC4122에서 지정한 variant입니다. 1 =Big-endian(기본값), 2 =Microsoft입니다.(U)Int*
String
예시
사용 예시
Query
Response
Query
Response
UUIDStringToNum
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 포맷의 36자 문자열을 받아 해당 문자열의 바이너리 표현인 FixedString(16)을 반환합니다. 포맷은 variant로 선택적으로 지정할 수 있으며 기본값은 Big-endian입니다.
구문
string— 36자 길이의 문자열 또는 고정 길이 문자열String또는FixedString(36)variant— RFC4122에 지정된 Variant입니다. 1 =Big-endian(기본값), 2 =Microsoft.(U)Int*
string의 이진 표현을 반환합니다. FixedString(16)
예시
사용 예시
Query
Response
Query
Response
UUIDToNum
variant로 포맷을 선택적으로 지정할 수 있습니다(기본값은 Big-endian).
이 함수는 별도의 두 함수 호출인 UUIDStringToNum(toString(uuid))를 대체하므로, UUID에서 바이트를 추출하기 위해 UUID를 문자열로 중간 변환할 필요가 없습니다.
구문
uuid— UUID입니다.String또는FixedStringvariant— RFC4122에 지정된 Variant입니다. 1 =Big-endian(기본값), 2 =Microsoft.(U)Int*
FixedString(16)
예시
사용 예시
Query
Response
Query
Response
UUIDv7ToDateTime
1970-01-01 00:00:00.000을 반환합니다. DateTime64(3)
예시
사용 예시
Query
Response
Query
Response
dateTime64ToSnowflakeID
value— 날짜 및 시간.DateTime64epoch— 1970-01-01부터 경과한 시간을 밀리초 단위로 나타낸 Snowflake ID의 epoch입니다. 기본값은 0(1970-01-01)입니다. Twitter/X epoch(2015-01-01)를 사용하려면 1288834974657을 지정하십시오.UInt*
UInt64로 변환한 값입니다.
예시
simple
Query
Response
dateTimeToSnowflakeID
value— 시간이 포함된 날짜입니다.DateTimeepoch— 1970-01-01부터 경과한 밀리초 단위의 Snowflake ID epoch입니다. 기본값은 0(1970-01-01)입니다. Twitter/X epoch(2015-01-01)에는 1288834974657을 지정하십시오.UInt*
UInt64로 변환됩니다.
예시
간단한 예시
Query
Response
dateTimeToUUIDv7
2025년 9월 기준으로 버전 7 UUID는 초안 상태이며, 향후 내부 레이아웃이 변경될 수 있습니다.
이 함수는 비결정적이므로 동일한 인수에 대해서도 서로 다른 결과를 반환할 수 있습니다.
value— 시간이 포함된 날짜/시간 값.DateTime
UUID
예시
사용 예시
Query
Response
Query
Response
generateSnowflakeID
generateSnowflakeID는 동시에 실행되는 모든 스레드와 쿼리 전반에서 함수가 호출될 때마다 타임스탬프 내 카운터 필드가 단조 증가하도록 보장합니다.
구현 세부 사항은 “Snowflake ID 생성” 섹션을 참조하십시오.
이 함수는 비결정적입니다. 동일한 인수에 대해서도 서로 다른 결과를 반환할 수 있습니다.
expr— 쿼리에서 이 함수가 여러 번 호출될 때 공통 하위 표현식 제거를 우회하는 데 사용되는 임의의 표현식입니다. 표현식 값은 반환되는 Snowflake ID에 영향을 주지 않습니다. 선택 사항입니다. -machine_id— 머신 ID입니다. 하위 10비트가 사용됩니다. Int64. 선택 사항입니다.
UInt64
예시
사용 예시
Query
Response
Query
Response
Query
Response
generateUUIDv4
이 함수는 비결정적입니다. 동일한 인수에 대해서도 서로 다른 결과를 반환할 수 있습니다.
expr— 선택 사항입니다. 함수가 하나의 쿼리에서 여러 번 호출될 때 공통 하위 표현식 제거을 우회하기 위해 사용하는 임의의 표현식입니다. 이 표현식의 값은 반환되는 UUID에 영향을 주지 않습니다.
UUID
예시
사용 예시
Query
Response
Query
Response
generateUUIDv7
2025년 9월 기준으로 버전 7 UUID는 초안 상태이며, 향후 레이아웃이 변경될 수 있습니다.
이 함수는 비결정적입니다. 즉, 같은 인수에 대해서도 서로 다른 결과를 반환할 수 있습니다.
expr— 선택 사항입니다. 함수가 한 쿼리에서 여러 번 호출될 때 공통 하위 표현식 제거를 피하기 위해 사용하는 임의의 표현식입니다. 이 표현식의 값은 반환되는 UUID에 영향을 주지 않습니다.Any
UUID
예시
사용 예시
Query
Response
Query
Response
snowflakeIDToDateTime
value— Snowflake ID입니다.UInt64epoch— 선택 사항입니다. 1970-01-01 이후 경과한 밀리초 단위의 Snowflake ID epoch입니다. 기본값은 0(1970-01-01)입니다. Twitter/X epoch(2015-01-01)의 경우 1288834974657을 지정하십시오.UInt*time_zone— 선택 사항입니다. 시간대입니다. 함수는time_string을 시간대에 따라 해석합니다.String
value의 timestamp 구성 요소를 반환합니다. DateTime
예시
사용 예시
Query
Response
snowflakeIDToDateTime64
value— Snowflake ID.UInt64epoch— 선택 사항입니다. 1970-01-01부터 경과한 밀리초 단위의 Snowflake ID epoch입니다. 기본값은 0(1970-01-01)입니다. Twitter/X epoch(2015-01-01)를 사용하려면 1288834974657을 지정하십시오.UInt*time_zone— 선택 사항입니다. 시간대입니다. 이 함수는time_string을 해당 시간대에 따라 파싱합니다.String
value의 타임스탬프 구성 요소를 scale = 3, 즉 밀리초 정밀도의 DateTime64로 반환합니다. DateTime64
예시
사용 예시
Query
Response
toUUIDOrDefault
string— UUID로 변환할 36자 String 또는 FixedString(36)입니다. -default— 첫 번째 인수를 UUID 타입으로 변환할 수 없을 때 반환할 UUID 값입니다.
UUID
예시
변환에 성공하면 파싱된 UUID를 반환합니다
Query
Response
Query
Response
toUUIDOrNull
UUID 타입으로 변환하지만, 오류가 발생하면 NULL을 반환합니다.
toUUID와 유사하지만, 변환 오류 시 예외를 발생시키는 대신 NULL을 반환합니다.
지원되는 인수:
- 표준 포맷(8-4-4-4-12자리 16진수)의 UUID 문자열 표현.
- 하이픈이 없는 UUID 문자열 표현(32자리 16진수).
NULL 반환):
- 잘못된 문자열 포맷.
- 문자열이 아닌 타입.
- 잘못된 형식의 UUID.
x— UUID의 문자열 표현입니다.String
NULL을 반환합니다. UUID 또는 NULL
예시
사용 예시
Query
Response