Прочие функции
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)─┐