Перейти к основному содержимому
Перейти к основному содержимому

Функция таблицы url

Функция url создает таблицу из URL с заданным форматом и структурой.

Функция url может использоваться в запросах SELECT и INSERT на данные в таблицах URL.

Синтаксис

Параметры

  • URL — адрес HTTP или HTTPS сервера, который может принимать GET или POST запросы (для запросов SELECT или INSERT соответственно). Тип: String.
  • formatФормат данных. Тип: String.
  • structure — Структура таблицы в формате 'UserID UInt64, Name String'. Определяет имена и типы столбцов. Тип: String.
  • headers - Заголовки в формате 'headers('key1'='value1', 'key2'='value2')'. Вы можете установить заголовки для HTTP вызова.

Возвращаемое значение

Таблица с заданным форматом и структурой и с данными из определенного URL.

Примеры

Получение первых 3 строк таблицы, которая содержит столбцы типа String и UInt32 из HTTP-сервера, который отвечает в формате CSV.

Вставка данных из URL в таблицу:

Глобы в URL

Шаблоны в фигурных скобках { } используются для генерации набора шардов или для указания запасных адресов. Подробные типы поддерживаемых шаблонов и примеры см. в описании функции remote. Символ | внутри шаблонов используется для указания запасных адресов. Они перебираются в том же порядке, в котором перечислены в шаблоне. Количество сгенерированных адресов ограничено настройкой glob_expansion_max_elements.

Виртуальные столбцы

  • _path — Путь к URL. Тип: LowCardinality(String).
  • _file — Имя ресурса URL. Тип: LowCardinality(String).
  • _size — Размер ресурса в байтах. Тип: Nullable(UInt64). Если размер неизвестен, значение равно NULL.
  • _time — Время последнего изменения файла. Тип: Nullable(DateTime). Если время неизвестно, значение равно NULL.
  • _headers - Заголовки HTTP-ответа. Тип: Map(LowCardinality(String), LowCardinality(String)).

Разделение в стиле Hive

При установке use_hive_partitioning равным 1, ClickHouse будет обнаруживать разделение в стиле Hive в пути (/name=value/) и позволит использовать колонки разделов в качестве виртуальных колонок в запросе. Эти виртуальные колонки будут иметь такие же имена, как в разделенном пути, но будут начинаться с _.

Пример

Использование виртуальной колонки, созданной с помощью разделения в стиле Hive.

Настройки хранения

  • engine_url_skip_empty_files - позволяет пропускать пустые файлы при чтении. По умолчанию отключено.
  • enable_url_encoding - позволяет включать/выключать декодирование/кодирование пути в uri. По умолчанию включено.

См. также