딕셔너리 작업용 함수
DDL 쿼리로 생성된 딕셔너리의 경우 dict_name 매개변수는 <database>.<dict_name> 형식으로 완전하게 지정해야 합니다. 그렇지 않으면 현재 데이터베이스가 사용됩니다.
딕셔너리 연결 및 설정에 대한 자세한 내용은 Dictionaries를 참조하십시오.
예시 딕셔너리
이 섹션의 예시에서는 다음 딕셔너리를 사용합니다. 아래에 설명된 함수 예제를 실행하려면 ClickHouse에서 이 딕셔너리를 생성해야 합니다.
dictGet<T> 및 dictGet<T>OrDefault 함수용 예시 딕셔너리
dictGetAll용 예시 딕셔너리
regexp 트리 딕셔너리의 데이터를 저장할 테이블을 생성합니다.
테이블에 데이터를 삽입합니다.
regexp 트리 딕셔너리를 생성합니다.
범위 키 딕셔너리 예시
입력 테이블을 생성합니다.
입력 테이블에 데이터를 삽입합니다.
딕셔너리를 생성합니다.
복합 키 딕셔너리 예시
소스 테이블을 생성합니다.
소스 테이블에 데이터를 삽입합니다.
딕셔너리를 생성합니다.
계층형 딕셔너리 예시
소스 테이블을 생성합니다.
소스 테이블에 데이터를 삽입합니다.
딕셔너리를 생성합니다.
dictGet
도입된 버전: v18.16
딕셔너리에서 값을 조회합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_names— 딕셔너리 컬럼 이름 또는 컬럼 이름의 튜플.String또는Tuple(String)id_expr— 키 값.UInt64/Tuple(T)를 반환하는 식.UInt64또는Tuple(T)
반환 값
키를 찾으면 id_expr에 해당하는 딕셔너리 속성 값을 반환합니다.
키를 찾지 못하면, 딕셔너리 설정에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
예시
단일 속성 조회
다중 속성
dictGetAll
도입된 버전: v23.5
딕셔너리 구성과 관계없이 딕셔너리 속성 값을 All 데이터 유형으로 변환합니다.
구문
인수
dict_name— 딕셔너리의 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식입니다(딕셔너리 설정에 따라 달라집니다).Expression또는Tuple(T)
반환값
id_expr에 해당하는 딕셔너리 속성 값을 반환하고,
그렇지 않으면 딕셔너리 설정에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetChildren
도입 버전: v21.4
첫 번째 수준 자식들을 인덱스 배열로 반환합니다. dictGetHierarchy의 역변환입니다.
구문
인수
dict_name— 딕셔너리 이름.Stringkey— 확인할 키.const String
반환 값
지정된 키의 1단계 자식 항목을 반환합니다. Array(UInt64)
예시
딕셔너리에서 1단계 자식 항목 가져오기
dictGetDate
도입된 버전: v1.1
딕셔너리 속성 값을 딕셔너리 설정과 관계없이 Date 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입 값 또는 튜플 값을 반환하는 식(딕셔너리 설정에 따라 달라집니다).Expression또는Tuple(T)
반환 값
id_expr에 대응하는 딕셔너리 속성 값을 반환하며,
그렇지 않으면 딕셔너리 설정에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetDateOrDefault
도입 버전: v1.1
딕셔너리 설정과 관계없이 딕셔너리 속성 값을 Date 데이터 유형으로 변환하거나, 키를 찾을 수 없는 경우 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입 값 또는 튜플 값을 반환하는 식(딕셔너리 설정에 따라 다름).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값(들).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환합니다.
해당 값이 없으면 default_value_expr 매개변수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetDateTime
도입 버전: v1.1
딕셔너리 구성과 관계없이 딕셔너리 속성 값을 DateTime 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 표현식(딕셔너리 설정에 따라 달라짐).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
해당 값이 없으면 딕셔너리 설정에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 ClickHouse가 예외를 발생시킵니다.
예시
사용 예시
dictGetDateTimeOrDefault
도입 버전: v1.1
딕셔너리 설정과 무관하게 딕셔너리 속성 값을 DateTime 데이터 형식으로 변환하며, 키를 찾을 수 없는 경우에는 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 표현식(딕셔너리 설정에 따라 달라짐).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환할 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않은 경우 default_value_expr 매개변수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetDescendants
도입 버전: v21.4
dictGetChildren FUNCTION을 level 단계만큼 재귀적으로 적용한 것과 같이 모든 하위 요소를 반환합니다.
구문
인자
dict_name— 딕셔너리 이름.Stringkey— 확인할 키.const Stringlevel— 확인할 계층 수준.level = 0이면 마지막까지 모든 하위 항목을 반환합니다.UInt8
반환 값
해당 키의 하위 항목들을 반환합니다. Array(UInt64)
예시
딕셔너리에서 1단계 자식 가져오기
dictGetFloat32
도입 버전: v1.1
딕셔너리 속성 값을 딕셔너리 설정과 무관하게 Float32 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입 값 또는 튜플 값을 반환하는 표현식(딕셔너리 구성에 따라 다름).Expression또는Tuple(T)
반환값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않은 경우 딕셔너리 구성에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 ClickHouse가 예외를 던집니다.
예시
사용 예시
dictGetFloat32OrDefault
도입된 버전: v1.1
딕셔너리(Dictionary) 설정과 관계없이 딕셔너리 속성 값을 Float32 데이터 타입으로 변환하거나, 키가 존재하지 않으면 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입 값 또는 튜플 값을 반환하는 표현식(딕셔너리 구성에 따라 다름).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
해당하는 값이 없으면 default_value_expr 인수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않는 경우 예외를 발생시킵니다.
예시
사용 예시
dictGetFloat64
도입 버전: v1.1
딕셔너리 구성과 상관없이 딕셔너리 속성 값을 Float64 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입 값 또는 튜플 값을 반환하는 표현식(딕셔너리 구성에 따라 달라집니다).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않은 경우 딕셔너리 구성에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 파싱하지 못하거나 값이 속성 데이터 타입과 일치하지 않는 경우 예외를 발생시킵니다.
예시
사용 예시
dictGetFloat64OrDefault
도입 버전: v1.1
딕셔너리 구성과 관계없이 딕셔너리 속성 값을 Float64 데이터 타입으로 변환하거나, 키를 찾을 수 없으면 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식(딕셔너리 설정에 따라 달라짐).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환할 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않은 경우 default_value_expr 매개변수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 그 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetHierarchy
도입 버전: v1.1
계층 딕셔너리에서 주어진 키의 모든 부모를 포함하는 배열을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringkey— 키 값.const String
반환 값
키의 상위(부모) 항목을 반환합니다. Array(UInt64)
예시
키의 계층 구조 가져오기
dictGetIPv4
도입 버전: v1.1
딕셔너리 속성 값을 딕셔너리 설정과 관계없이 IPv4 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입 값 또는 튜플 값을 반환하는 식(딕셔너리 구성에 따라 달라집니다).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
해당하지 않는 경우 딕셔너리 구성에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetIPv4OrDefault
도입된 버전: v23.1
딕셔너리 설정과 관계없이 딕셔너리 속성 값을 IPv4 데이터 형식으로 변환하며, 키가 존재하지 않으면 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 표현식(딕셔너리 구성에 따라 달라짐).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하고,
그렇지 않으면 default_value_expr 매개변수로 전달된 값을 반환합니다.
속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 ClickHouse는 예외를 발생시킵니다.
예시
사용 예시
dictGetIPv6
도입 버전: v23.1
딕셔너리의 속성 값을 딕셔너리 설정과 무관하게 IPv6 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식(딕셔너리 구성에 따라 달라짐).Expression또는Tuple(T)
반환값
id_expr에 대응하는 딕셔너리 속성 값을 반환하며,
해당하지 않는 경우 딕셔너리 구성에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetIPv6OrDefault
도입된 버전: v23.1
딕셔너리 구성과 관계없이 딕셔너리 속성 값을 IPv6 데이터 타입으로 변환하거나, 키가 존재하지 않으면 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 표현식(딕셔너리 설정에 따라 달라짐).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성의 값을 반환하며,
그렇지 않으면 default_value_expr 매개변수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않는 경우 예외를 발생시킵니다.
예시
사용 예시
dictGetInt16
도입 버전: v1.1
딕셔너리 구성과 관계없이 딕셔너리 속성 값을 Int16 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입 값 또는 튜플 값을 반환하는 표현식(딕셔너리 구성에 따라 달라짐).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환합니다.
해당 값이 없으면 딕셔너리 구성에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 ClickHouse는 예외를 발생시킵니다.
예시
사용 예시
dictGetInt16OrDefault
도입된 버전: v1.1
딕셔너리 설정과 관계없이 딕셔너리 속성 값을 Int16 데이터 타입으로 변환하거나, 키가 존재하지 않을 경우 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 형식의 값을 반환하는 표현식(딕셔너리 구성에 따라 다름).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
해당하지 않는 경우 default_value_expr 매개변수로 전달된 값을 반환합니다.
속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 ClickHouse는 예외를 발생시킵니다.
예시
사용 예시
dictGetInt32
v1.1에 도입되었습니다.
딕셔너리 속성 값을 딕셔너리 설정과 관계없이 Int32 데이터 타입으로 변환합니다.
구문
인자
dict_name— 딕셔너리의 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식(딕셔너리 설정에 따라 다름).Expression또는Tuple(T)
반환값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않은 경우 딕셔너리 설정에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 구문 분석할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetInt32OrDefault
도입 버전: v1.1
딕셔너리 구성과 관계없이 딕셔너리 속성 값을 Int32 데이터 타입으로 변환하며, 키가 존재하지 않으면 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식(딕셔너리 설정에 따라 달라집니다).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값입니다.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
해당 값이 없으면 default_value_expr 인수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성의 데이터 타입과 일치하지 않는 경우 예외를 발생시킵니다.
예시
사용 예시
dictGetInt64
도입: v1.1
딕셔너리 속성 값을 딕셔너리 구성과 관계없이 Int64 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 표현식(딕셔너리 설정에 따라 다름).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않으면 딕셔너리 설정에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않는 경우 예외를 발생시킵니다.
예시
사용 예시
dictGetInt64OrDefault
도입된 버전: v1.1
딕셔너리 구성과 관계없이 딕셔너리 속성 값을 Int64 데이터 유형으로 변환하거나, 키를 찾을 수 없으면 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식(딕셔너리 설정에 따라 다름).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값(들).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않은 경우 default_value_expr 매개변수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않을 때 예외를 발생시킵니다.
예시
사용 예시
dictGetInt8
도입된 버전: v1.1
딕셔너리 속성 값을 딕셔너리 구성과 관계없이 Int8 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리(Dictionary) 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식(딕셔너리 구성에 따라 다름).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성(attribute) 값을 반환하며,
그렇지 않은 경우 딕셔너리 구성에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값의 타입이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetInt8OrDefault
도입된 버전: v1.1
딕셔너리 구성과 관계없이 딕셔너리 속성 값을 Int8 데이터 타입으로 변환하거나, 키를 찾을 수 없는 경우 제공된 기본값을 반환합니다.
구문
인자
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식(딕셔너리 구성에 따라 달라짐).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않은 경우 default_value_expr 매개변수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성의 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetKeys
도입 버전: v25.12
지정한 값과 같은 속성을 가진 딕셔너리 키를 반환합니다. 단일 속성에 대해서 dictGet 함수의 역방향 기능을 수행합니다.
dictGetKeys에서 사용하는 쿼리별 역조회 캐시의 크기를 제한하려면 max_reverse_dictionary_lookup_cache_size_bytes 설정을 사용합니다.
캐시는 동일한 쿼리 내에서 딕셔너리를 다시 스캔하지 않도록, 각 속성 값에 대한 직렬화된 키 튜플을 저장합니다.
캐시는 쿼리 간에는 유지되지 않습니다. 제한에 도달하면 항목은 LRU 방식으로 제거됩니다.
입력의 낮은 카디널리티를 가지며 작업 집합이 캐시에 적재될 수 있을 때, 대규모 딕셔너리에서 가장 효과적입니다. 캐시를 비활성화하려면 0으로 설정합니다.
구문
인수
dict_name— 딕셔너리 이름입니다.Stringattr_name— 일치시킬 속성입니다.Stringvalue_expr— 해당 속성과 비교할 값입니다.Expression
반환 값
단일 키 딕셔너리의 경우: 속성 값이 value_expr와 같은 키들의 배열을 반환합니다. 다중 키 딕셔너리의 경우: 속성 값이 value_expr와 같은 키 튜플들의 배열을 반환합니다. 딕셔너리에 value_expr에 해당하는 속성이 없으면 빈 배열을 반환합니다. ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성의 데이터 타입으로 변환될 수 없는 경우 예외를 발생시킵니다.
예시
사용 예시
dictGetOrDefault
도입된 버전: v18.16
딕셔너리에서 값을 조회하며, 키가 존재하지 않으면 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_names— 딕셔너리의 컬럼 이름 또는 컬럼 이름 튜플.String또는Tuple(String)id_expr— 키 값.UInt64/Tuple(T)를 반환하는 표현식.UInt64또는Tuple(T)default_value— 키를 찾을 수 없을 때 반환할 기본값. 타입은 해당 속성의 데이터 타입과 일치해야 합니다.
반환 값
키가 존재하는 경우 id_expr에 해당하는 딕셔너리 속성의 값을 반환합니다.
키가 존재하지 않는 경우 제공된 default_value를 반환합니다.
예시
기본값을 사용한 값 조회
dictGetOrNull
도입된 버전: v21.4
딕셔너리에서 값을 조회하며, 키가 존재하지 않으면 NULL을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름입니다. 문자열 리터럴입니다. -attr_name— 조회할 컬럼 이름입니다. 문자열 리터럴입니다. -id_expr— 키 값입니다. 딕셔너리 키 타입의 값을 반환하는 식입니다.
반환 값
키를 찾으면 id_expr에 해당하는 딕셔너리 속성 값을 반환합니다.
키를 찾지 못하면 NULL을 반환합니다.
예시
범위 키 딕셔너리를 사용하는 예시
dictGetString
도입 버전: v1.1
딕셔너리 속성 값을 딕셔너리 구성과 무관하게 String 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 표현식(딕셔너리 구성에 따라 결정됨).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
해당 값이 없으면 딕셔너리 구성에서 해당 속성에 대해 지정한 <null_value> 요소의 내용을 반환합니다.
속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 ClickHouse는 예외를 발생시킵니다.
예시
사용 예시
dictGetStringOrDefault
도입 버전: v1.1
딕셔너리 구성과 관계없이 딕셔너리 속성 값을 String 데이터 타입으로 변환하거나, 키를 찾을 수 없으면 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리의 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 표현식입니다(딕셔너리 구성에 따라 달라집니다).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값입니다.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않은 경우 default_value_expr 매개변수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetUInt16
도입 버전: v1.1
딕셔너리 설정과 관계없이 딕셔너리 속성 값을 UInt16 데이터 유형으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리 컬럼의 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식(딕셔너리 설정에 따라 달라짐).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
해당하는 값이 없으면 딕셔너리 설정에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성의 데이터 타입과 일치하지 않으면 예외를 던집니다.
예시
사용 예시
dictGetUInt16OrDefault
도입 버전: v1.1
딕셔너리 설정과 관계없이 딕셔너리 속성 값을 UInt16 데이터 타입으로 변환하거나, 키가 존재하지 않는 경우 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식(딕셔너리 구성에 따라 달라짐).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않으면 default_value_expr 매개변수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성의 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetUInt32
도입된 버전: v1.1
딕셔너리 속성 값을 딕셔너리 설정과 관계없이 UInt32 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식(딕셔너리 구성에 따라 다름).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성의 값을 반환하며,
해당하는 값이 없으면 딕셔너리 구성에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 구문 분석할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetUInt32OrDefault
도입 버전: v1.1
딕셔너리 설정과 관계없이 딕셔너리 속성 값을 UInt32 데이터 타입으로 변환하거나, 키가 존재하지 않는 경우 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입 값 또는 튜플 값을 반환하는 표현식(딕셔너리 설정에 따라 달라짐).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
해당 값이 없으면 default_value_expr 매개변수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않는 경우 예외를 던집니다.
예시
사용 예시
dictGetUInt64
도입 버전: v1.1
딕셔너리 속성 값을 딕셔너리 설정과 관계없이 UInt64 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 표현식(딕셔너리 구성에 따라 달라짐).Expression또는Tuple(T)
반환값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않은 경우 딕셔너리 구성에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않는 경우 예외를 발생시킵니다.
예시
사용 예시
dictGetUInt64OrDefault
도입 버전: v1.1
딕셔너리 설정과 관계없이 딕셔너리 속성 값을 UInt64 데이터 타입으로 변환하거나, 키를 찾을 수 없는 경우 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입 값 또는 튜플 값을 반환하는 식(딕셔너리 설정에 따라 달라짐).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않은 경우 default_value_expr 매개변수로 전달된 값을 반환합니다.
ClickHouse가 속성 값을 구문 분석할 수 없거나 값이 속성의 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetUInt8
도입 버전: v1.1
딕셔너리 구성과 무관하게 딕셔너리 속성 값을 UInt8 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입 값 또는 튜플 값을 반환하는 식입니다(딕셔너리 설정에 따라 결정됨).Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않으면 딕셔너리 설정에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetUInt8OrDefault
도입: v1.1
딕셔너리 구성과 관계없이 딕셔너리 속성 값을 UInt8 데이터 형식으로 변환하거나, 키를 찾을 수 없는 경우 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리의 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 표현식(딕셔너리 구성에 따라 다름).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성의 값을 반환하며,
해당 값이 없으면 default_value_expr 매개변수로 전달된 값을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetUUID
도입: v1.1
딕셔너리 구성과 관계없이 딕셔너리 속성 값을 UUID 데이터 타입으로 변환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입의 값 또는 튜플 값을 반환하는 식(딕셔너리 설정에 따라 다름).Expression또는Tuple(T)
반환값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않으면 딕셔너리 설정에서 해당 속성에 대해 지정된 <null_value> 요소의 내용을 반환합니다.
ClickHouse는 속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 예외를 발생시킵니다.
예시
사용 예시
dictGetUUIDOrDefault
도입 버전: v1.1
딕셔너리 속성 값을 딕셔너리 설정과 무관하게 UUID 데이터 타입으로 변환하거나, 키가 존재하지 않으면 제공된 기본값을 반환합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringattr_name— 딕셔너리 컬럼 이름.String또는Tuple(String)id_expr— 키 값. 딕셔너리 키 타입 값 또는 튜플 값을 반환하는 표현식(딕셔너리 구성에 따라 달라짐).Expression또는Tuple(T)default_value_expr— 딕셔너리에id_expr키를 가진 행이 없을 때 반환되는 값.Expression또는Tuple(T)
반환 값
id_expr에 해당하는 딕셔너리 속성 값을 반환하며,
그렇지 않은 경우 default_value_expr 매개변수로 전달된 값을 반환합니다.
속성 값을 파싱할 수 없거나 값이 속성 데이터 타입과 일치하지 않으면 ClickHouse가 예외를 발생시킵니다.
예시
사용 예시
dictHas
도입된 버전: v1.1
딕셔너리에 키가 존재하는지 확인합니다.
구문
인수
dict_name— 딕셔너리 이름.Stringid_expr— 키 값.const String
반환값
키가 존재하면 1, 존재하지 않으면 0을 반환합니다. UInt8
예시
딕셔너리에서 키 존재 여부 확인
dictIsIn
도입 버전: v1.1
딕셔너리의 전체 계층 체인에서 키의 상위 항목을 검사합니다.
문법
인수
dict_name— 딕셔너리 이름.Stringchild_id_expr— 확인할 키.Stringancestor_id_expr—child_id_expr키의 추정 상위 항목.const String
반환 값
child_id_expr가 ancestor_id_expr의 하위 항목이 아니면 0을, child_id_expr가 ancestor_id_expr의 하위 항목이거나 child_id_expr가 ancestor_id_expr인 경우 1을 반환합니다. UInt8
예시
계층 관계 확인