mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-29 19:12:03 +00:00
Added descriptions for some misc. functions to the RU reference.
Fixed heading layout for the greatest/least.
This commit is contained in:
parent
212c980124
commit
2febdece59
@ -4847,6 +4847,8 @@ SELECT
|
||||
===appendTrailingCharIfAbsent(s, c)===
|
||||
Если строка %%s%% непустая и не содержит символ %%c%% на конце, то добавляет символ %%c%% в конец.
|
||||
|
||||
===convertCharset(s, from, to)===
|
||||
Возвращает сконвертированную из кодировки from в кодировку to строку s.
|
||||
|
||||
==Функции поиска в строках==
|
||||
|
||||
@ -4856,9 +4858,11 @@ SELECT
|
||||
===position(haystack, needle)===
|
||||
Поиск подстроки needle в строке haystack.
|
||||
Возвращает позицию (в байтах) найденной подстроки, начиная с 1, или 0, если подстрока не найдена.
|
||||
Есть также функция positionCaseInsensitive.
|
||||
|
||||
===positionUTF8(haystack, needle)===
|
||||
Так же, как position, но позиция возвращается в кодовых точках Unicode. Работает при допущении, что строка содержит набор байт, представляющий текст в кодировке UTF-8. Если допущение не выполнено - то возвращает какой-нибудь результат (не кидает исключение).
|
||||
Есть также функция positionCaseInsensitiveUTF8.
|
||||
|
||||
===match(haystack, pattern)===
|
||||
Проверка строки на соответствие регулярному выражению pattern. Регулярное выражение re2.
|
||||
@ -5998,6 +6002,77 @@ LIMIT 10
|
||||
└────────────────┴─────────┘
|
||||
%%
|
||||
|
||||
===formatReadableSize(x)===
|
||||
|
||||
Принимает число (в байтах). Возвращает человекопонятный размер в виде строки. Пример:
|
||||
|
||||
%%
|
||||
SELECT
|
||||
arrayJoin([1, 1024, 1024*1024, 192851925]) AS filesize_bytes,
|
||||
formatReadableSize(filesize_bytes) AS filesize
|
||||
|
||||
┌─filesize_bytes─┬─filesize───┐
|
||||
│ 1 │ 1.00 B │
|
||||
│ 1024 │ 1.00 KiB │
|
||||
│ 1048576 │ 1.00 MiB │
|
||||
│ 192851925 │ 183.92 MiB │
|
||||
└────────────────┴────────────┘
|
||||
%%
|
||||
|
||||
===least(a, b)===
|
||||
|
||||
Возвращает наименьшее значение из a и b.
|
||||
|
||||
===greatest(a, b)===
|
||||
|
||||
Возвращает наибольшее значение из a и b.
|
||||
|
||||
===uptime()===
|
||||
|
||||
Возвращает аптайм сервера в секундах.
|
||||
|
||||
===version()===
|
||||
|
||||
Возвращает версию сервера в виде строки.
|
||||
|
||||
===rowNumberInAllBlocks()===
|
||||
|
||||
Возвращает порядковый номер строки в блоке данных. Функция учитывает только задействованные блоки данных.
|
||||
|
||||
===runningDifference(x)===
|
||||
|
||||
Считает разницу между последовательными значениями строк в блоке данных.
|
||||
Возвращает 0 для первой строки и разницу с предыдущей строкой для каждой последующей строки.
|
||||
|
||||
Результат функции зависит от затронутых блоков данных и порядка данных в блоке.
|
||||
Если сделать подзапрос с ORDER BY и вызывать функцию извне подзапроса, можно будет получить ожидаемый результат.
|
||||
|
||||
Пример:
|
||||
%%
|
||||
SELECT
|
||||
EventID,
|
||||
EventTime,
|
||||
runningDifference(EventTime) AS delta
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
EventID,
|
||||
EventTime
|
||||
FROM events
|
||||
WHERE EventDate = '2016-11-24'
|
||||
ORDER BY EventTime ASC
|
||||
LIMIT 5
|
||||
)
|
||||
|
||||
┌─EventID─┬───────────EventTime─┬─delta─┐
|
||||
│ 1106 │ 2016-11-24 00:00:04 │ 0 │
|
||||
│ 1107 │ 2016-11-24 00:00:05 │ 1 │
|
||||
│ 1108 │ 2016-11-24 00:00:05 │ 0 │
|
||||
│ 1109 │ 2016-11-24 00:00:09 │ 4 │
|
||||
│ 1110 │ 2016-11-24 00:00:10 │ 1 │
|
||||
└─────────┴─────────────────────┴───────┘
|
||||
%%
|
||||
|
||||
|
||||
==Функция arrayJoin==
|
||||
|
||||
@ -6031,14 +6106,6 @@ SELECT
|
||||
└─────┴───────────┴─────────┘
|
||||
%%
|
||||
|
||||
===least(a, b)===
|
||||
|
||||
Возвращает наименьшее значение из a и b.
|
||||
|
||||
===greatest(a, b)===
|
||||
|
||||
Возвращает наибольшее значение из a и b.
|
||||
|
||||
</div>
|
||||
<div class="island">
|
||||
<h1>Агрегатные функции</h1>
|
||||
|
Loading…
Reference in New Issue
Block a user