Для словарей, созданных с помощью DDL-запросов, параметр
dict_name должен быть указан полностью, в формате <database>.<dict_name>. В противном случае используется текущая база данных.Примеры словарей
В примерах этого раздела используются следующие словари. Вы можете создать их в ClickHouse, чтобы выполнить примеры для функций, описанных ниже.Пример словаря для функций dictGet<T> и dictGet<T>OrDefault
Пример словаря для функций dictGet<T> и dictGet<T>OrDefault
Пример словаря для dictGetAll
Пример словаря для dictGetAll
Создайте таблицу для хранения данных словаря regexp tree:Вставьте данные в таблицу:Создайте словарь regexp tree:
Пример словаря с диапазонным ключом
Пример словаря с диапазонным ключом
Создайте входную таблицу:Вставьте данные во входную таблицу:Создайте словарь:
Пример словаря с составным ключом
Пример словаря с составным ключом
Создайте таблицу-источник:Вставьте данные в таблицу-источник:Создайте словарь:
Пример иерархического словаря
Пример иерархического словаря
Создайте таблицу-источник:Вставьте данные в таблицу-источник:Создайте словарь:
Передача ключей в функции словаря
Аргумент ключа (id_expr) в таких функциях, как dictGet, dictGetOrDefault, dictGetOrNull и dictHas, зависит от ключа словаря:
- Для словаря с простым ключом (
UInt64) передайте значение ключа напрямую:
- Для словаря с составным ключом, включающим более одного атрибута, передайте значения ключа в виде кортежа:
- Когда составной ключ состоит из одного атрибута, значение ключа можно передавать напрямую, не оборачивая его в
tuple. Оба следующих варианта допустимы и эквивалентны:
ip_trie, у которых ключом служит один атрибут. IP-адрес для поиска можно передать напрямую:
dictGet
Добавленный в: v18.16.0 Возвращает значения из словаря.Эта функция недетерминирована: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_names— Имя столбца словаря или кортеж имён столбцов.StringилиTuple(String)id_expr— Значение ключа. Для словаря с простым ключом — выражение, возвращающее значениеUInt64. Для словаря с составным ключом — выражение, возвращающее кортеж значений ключа. Если составной ключ состоит из одного атрибута, его значение можно передать напрямую, не оборачивая вtuple.UInt64илиTuple(T)
<null_value>, указанного для атрибута в конфигурации словаря.
Примеры
Получение одного атрибута
Query
Response
Query
Response
dictGetAll
Добавленный в: v23.5.0 Возвращает значения атрибутов всех узлов, совпавших с каждым ключом в словаре дерева регулярных выражений. За исключением того, что эта функция возвращает значения типаArray(T) вместо T, она ведёт себя аналогично dictGet.
Эта функция недетерминирована: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_names— Имя столбца словаря или кортеж имён столбцов.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)limit— Необязательно. Максимальная длина каждого возвращаемого массива значений. При усечении дочерним узлам отдаётся приоритет перед родительскими; в остальных случаях соблюдается заданный порядок элементов в словаре дерева регулярных выражений. Если не указано, длина массива не ограничена.UInt*
id_expr, для каждого атрибута, указанного в attr_names.
Если в словаре нет ключа, соответствующего id_expr, возвращается пустой массив.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если оно не соответствует типу данных атрибута.
Array(T)
Примеры
Пример использования
Query
Response
dictGetChildren
Добавленный в: v21.4.0 Возвращает дочерние элементы первого уровня в виде массива индексов. Это преобразование, обратное dictGetHierarchy.Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringkey— Проверяемый ключ.const String
Array(UInt64)
Примеры
Получение дочерних элементов первого уровня из словаря
Query
Response
dictGetDate
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в типDate независимо от конфигурации словаря.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr;
в противном случае возвращает содержимое элемента <null_value>, указанного для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetDateOrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если оно не соответствует типу данных атрибута.
Query
Response
dictGetDateTime
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхDateTime вне зависимости от конфигурации словаря.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr;
в противном случае возвращает содержимое элемента <null_value>, указанное для этого атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetDateTimeOrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не удаётся разобрать значение атрибута или оно не соответствует типу данных атрибута.
Query
Response
dictGetDescendants
Добавленный в: v21.4.0 Возвращает всех потомков, как если бы функцияdictGetChildren рекурсивно применялась level раз.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringkey— Проверяемый ключ.const Stringlevel— Уровень иерархии. Еслиlevel = 0, возвращаются все потомки до конца.UInt8
Array(UInt64)
Примеры
Получение дочерних элементов первого уровня словаря
Query
Response
dictGetFloat32
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхFloat32 вне зависимости от конфигурации словаря.
Эта функция недетерминирована: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr,
в противном случае — содержимое элемента <null_value>, указанного для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если это значение не соответствует типу данных атрибута.
Query
Response
dictGetFloat32OrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetFloat64
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхFloat64 независимо от конфигурации словаря.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr,
в противном случае возвращает содержимое элемента <null_value>, указанного для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не удаётся разобрать значение атрибута или оно не соответствует типу данных атрибута.
Query
Response
dictGetFloat64OrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если это значение не соответствует типу данных атрибута.
Query
Response
dictGetHierarchy
Добавленный в: v1.1.0 Создает массив, содержащий всех предков ключа в иерархическом словаре.Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringkey— Значение ключа.const String
Array(UInt64)
Примеры
Получение иерархии для ключа
Query
Response
dictGetIPv4
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхIPv4 независимо от конфигурации словаря.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr,
или содержимое элемента <null_value>, указанного для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если оно не соответствует типу данных атрибута.
Query
Response
dictGetIPv4OrDefault
Добавленный в: v23.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не удаётся разобрать значение атрибута или оно не соответствует типу данных атрибута.
Query
Response
dictGetIPv6
Добавленный в: v23.1.0 Преобразует значение атрибута словаря в тип данныхIPv6 вне зависимости от конфигурации словаря.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr,
в противном случае возвращает содержимое элемента <null_value>, указанное для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetIPv6OrDefault
Добавленный в: v23.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetInt16
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхInt16 вне зависимости от конфигурации словаря.
Эта функция недетерминирована: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr;
в противном случае возвращает содержимое элемента <null_value>, указанное для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если оно не соответствует типу данных атрибута.
Query
Response
dictGetInt16OrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если оно не соответствует типу данных атрибута.
Query
Response
dictGetInt32
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхInt32 вне зависимости от конфигурации словаря.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr,
в противном случае возвращает содержимое элемента <null_value>, указанного для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetInt32OrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetInt64
Добавленный в: v1.1.0 Преобразует значение атрибута словаря к типу данныхInt64 независимо от конфигурации словаря.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr,
иначе возвращает содержимое элемента <null_value>, заданного для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetInt64OrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или оно не соответствует типу данных атрибута.
Query
Response
dictGetInt8
Добавленный в: v1.1.0 Преобразует значение атрибута словаря к типу данныхInt8 независимо от конфигурации словаря.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr;
в противном случае возвращает содержимое элемента <null_value>, заданного для этого атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если это значение не соответствует типу данных атрибута.
Query
Response
dictGetInt8OrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не удаётся разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetKeys
Добавленный в: v25.12.0 Возвращает ключ или ключи словаря, атрибут которых равен указанному значению. Это обратная функция кdictGet для одного атрибута.
Используйте настройку max_reverse_dictionary_lookup_cache_size_bytes, чтобы ограничить размер кэша обратного поиска для каждого запроса, используемого dictGetKeys.
Кэш хранит сериализованные кортежи ключей для каждого значения атрибута, чтобы избежать повторного сканирования словаря в рамках одного и того же запроса.
Кэш не сохраняется между запросами. При достижении лимита записи вытесняются по LRU.
Это наиболее эффективно для больших словарей, когда входные данные имеют низкую кардинальность, а рабочий набор помещается в кэш. Установите 0, чтобы отключить кэширование.
Эта функция недетерминированна: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Атрибут, по которому выполняется сопоставление.Stringvalue_expr— Значение для сопоставления с атрибутом.Expression
value_expr. Для словарей с несколькими ключами: массив кортежей ключей, атрибут которых равен value_expr. Если в словаре нет атрибута, соответствующего value_expr, возвращается пустой массив. ClickHouse генерирует исключение, если не может разобрать значение атрибута или если это значение нельзя преобразовать к типу данных атрибута.
Примеры
Пример использования
Query
Response
dictGetOrDefault
Добавленный в: v18.16.0 Возвращает значения из словаря; если ключ не найден, используется значение по умолчанию.Эта функция недетерминирована: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_names— Имя столбца словаря или кортеж имён столбцов.StringилиTuple(String)id_expr— Значение ключа. Для словаря с простым ключом — выражение, возвращающее значениеUInt64. Для словаря с составным ключом — выражение, возвращающее кортеж значений ключа. Если составной ключ состоит из одного атрибута, его значение можно передать напрямую, без обёртывания вtuple.UInt64илиTuple(T)default_value— Значение по умолчанию, возвращаемое, если ключ не найден. Тип должен совпадать с типом данных атрибута.
id_expr, если ключ найден.
Если ключ не найден, возвращает указанное default_value.
Примеры
Получение значения с возвратом значения по умолчанию
Query
Response
dictGetOrNull
Добавленный в: v21.4.0 Возвращает значения из словаря; если ключ не найден, возвращает NULL.Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— имя словаря. Строковый литерал. -attr_name— имя извлекаемого столбца. Строковый литерал. -id_expr— значение ключа. Выражение, возвращающее значение типа ключа словаря.
id_expr, если ключ найден.
Если ключ не найден, возвращает NULL.
Примеры
Пример использования словаря с диапазонным ключом
Query
Response
dictGetRoot
Добавленный в: v26.7.0 Возвращает самого верхнего предка (корень) ключа в иерархическом словаре. Это удобный эквивалент получения последнего элемента массива, возвращаемого dictGetHierarchy, то естьdictGetHierarchy(dict_name, key)[-1].
Если ключ сам является узлом верхнего уровня в иерархии, возвращается этот же ключ. Если ключ отсутствует в словаре, возвращается 0.
Эта функция недетерминирована: она может возвращать разные результаты для одних и тех же аргументов.
UInt64
Примеры
Получение корня для ключа
Query
Response
dictGetString
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхString вне зависимости от конфигурации словаря.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr,
в противном случае — содержимое элемента <null_value>, указанного для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetStringOrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetUInt16
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхUInt16 независимо от конфигурации словаря.
Эта функция недетерминирована: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr;
в противном случае возвращает содержимое элемента <null_value>, заданное для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetUInt16OrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если оно не соответствует типу данных атрибута.
Query
Response
dictGetUInt32
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхUInt32 независимо от конфигурации словаря.
Эта функция недетерминирована: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, которое возвращает значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr,
иначе возвращает содержимое элемента <null_value>, указанного для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetUInt32OrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если оно не соответствует типу данных атрибута.
Query
Response
dictGetUInt64
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхUInt64 независимо от конфигурации словаря.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr,
в противном случае — содержимое элемента <null_value>, указанного для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetUInt64OrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetUInt8
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхUInt8 независимо от конфигурации словаря.
Эта функция недетерминирована: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr,
в противном случае возвращает содержимое элемента <null_value>, указанного для атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetUInt8OrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictGetUUID
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данныхUUID вне зависимости от конфигурации словаря.
Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringattr_name— Имя столбца словаря.StringилиTuple(String)id_expr— Значение ключа. Выражение, возвращающее значение типа ключа словаря или значение кортежа (в зависимости от конфигурации словаря).ExpressionилиTuple(T)
id_expr;
в противном случае возвращает содержимое элемента <null_value>, указанного для этого атрибута в конфигурации словаря.
ClickHouse генерирует исключение, если не может разобрать значение атрибута или если оно не соответствует типу данных атрибута.
Query
Response
dictGetUUIDOrDefault
Добавленный в: v1.1.0 Преобразует значение атрибута словаря в тип данных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 генерирует исключение, если не может разобрать значение атрибута или если значение не соответствует типу данных атрибута.
Query
Response
dictHas
Добавленный в: v1.1.0 Проверяет, содержится ли ключ в словаре.Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringid_expr— Значение ключаconst String
1, если ключ присутствует, иначе 0. UInt8
Примеры
Проверка наличия ключа в словаре
Query
Response
dictIsIn
Добавленный в: v1.1.0 Проверяет предка ключа по всей иерархической цепочке словаря.Эта функция является недетерминированной: она может возвращать разные результаты для одних и тех же аргументов.
dict_name— Имя словаря.Stringchild_id_expr— Проверяемый ключ.Stringancestor_id_expr— Предполагаемый предок ключаchild_id_expr.const String
0, если child_id_expr не является потомком ancestor_id_expr, и 1, если child_id_expr является потомком ancestor_id_expr или совпадает с ancestor_id_expr. UInt8
Примеры
Проверка иерархической зависимости
Query
Response