Прочие функции
hostName()
Возвращает строку - имя хоста, на котором эта функция была выполнена. При распределённой обработке запроса, это будет имя хоста удалённого сервера, если функция выполняется на удалённом сервере. Если функция вызывается в контексте распределенной таблицы, то она генерирует обычный столбец со значениями, актуальными для каждого шарда. Иначе возвращается константа.
getMacro
Возвращает именованное значение из секции macros конфигурации сервера.
Синтаксис
getMacro(name)
Аргументы
name— имя, которое необходимо получить из секцииmacros. String.
Возвращаемое значение
- Значение по указанному имени.
Тип: String.
Пример
Пример секции macros в конфигурационном файле сервера:
<macros>
<test>Value</test>
</macros>
Запрос:
SELECT getMacro('test');
Результат:
┌─getMacro('test')─┐
│ Value │
└──────────────────┘
Альтернативный способ получения значения:
SELECT * FROM system.macros
WHERE macro = 'test'
┌─macro─┬─substitution─┐
│ test │ Value │
└───────┴──────────────┘
FQDN
Возвращает полное имя домена.
Синтаксис
fqdn()
Эта функция регистронезависимая.
Возвращаемое значение
- Полное имя домена.
Тип: String.
Пример
Запрос:
SELECT FQDN();
Результат:
┌─FQDN()──────────────────────────┐
│ clickhouse.ru-central1.internal │
└─────────────────────────────────┘
basename
Извлекает конечную часть строки после последнего слэша или бэкслэша. Функция часто используется для извлечения имени файла из пути.
basename( expr )
Аргументы
expr— выражение, возвращающее значение типа String. В результирующем значении все бэкслэши должны быть экранированы.
Возвращаемое значение
Строка, содержащая:
-
Конечную часть стр оки после последнего слэша или бэкслэша.
Если входная строка содержит путь, заканчивающийся слэшем или бэкслэшем, например,
/илис:\, функция возвращает пустую строку. -
Исходная строка, если нет слэша или бэкслэша.
Пример
SELECT 'some/long/path/to/file' AS a, basename(a);
┌─a──────────────────────┬─basename('some\\long\\path\\to\\file')─┐
│ some\long\path\to\file │ file │
└────────────────────────┴────────────────────────────────────────┘
SELECT 'some\\long\\path\\to\\file' AS a, basename(a);
┌─a──────────────────────┬─basename('some\\long\\path\\to\\file')─┐
│ some\long\path\to\file │ file │
└────────────────────────┴────────────────────────────────────────┘
SELECT 'some-file-name' AS a, basename(a);
┌─a──────────────┬─basename('some-file-name')─┐
│ some-file-name │ some-file-name │
└────────────────┴────────────────────────────┘
visibleWidth(x)
Вычисляет приблизительную ширину при выводе значения в текстовом (tab-separated) виде на консоль. Функция используется системой для реализации Pretty форматов.
NULL представляется как строка, соответствующая отображению NULL в форматах Pretty.
SELECT visibleWidth(NULL)
┌─visibleWidth(NULL)─┐