diff --git a/docs/en/sql-reference/functions/hash-functions.md b/docs/en/sql-reference/functions/hash-functions.md index dc4c749865a..e28594540be 100644 --- a/docs/en/sql-reference/functions/hash-functions.md +++ b/docs/en/sql-reference/functions/hash-functions.md @@ -149,7 +149,7 @@ SHA1('s') **Arguments** -- `s` — Input string for SHA-1 hash calculation. [String](..data-types/string.md). +- `s` — Input string for SHA-1 hash calculation. [String](../data-types/string.md). **Returned value** @@ -187,7 +187,7 @@ SHA224('s') **Arguments** -- `s` — Input string for SHA-224 hash calculation. [String](..data-types/string.md). +- `s` — Input string for SHA-224 hash calculation. [String](../data-types/string.md). **Returned value** @@ -225,7 +225,7 @@ SHA256('s') **Arguments** -- `s` — Input string for SHA-256 hash calculation. [String](..data-types/string.md). +- `s` — Input string for SHA-256 hash calculation. [String](../data-types/string.md). **Returned value** @@ -267,7 +267,7 @@ Even in these cases, we recommend applying the function offline and pre-calculat **Arguments** -- `s` — Input string for SHA-512 hash calculation. [String](..data-types/string.md). +- `s` — Input string for SHA-512 hash calculation. [String](../data-types/string.md). **Returned value** diff --git a/docs/ru/sql-reference/functions/hash-functions.md b/docs/ru/sql-reference/functions/hash-functions.md index 07c741e0588..d7e86d5a540 100644 --- a/docs/ru/sql-reference/functions/hash-functions.md +++ b/docs/ru/sql-reference/functions/hash-functions.md @@ -143,10 +143,51 @@ SELECT groupBitXor(cityHash64(*)) FROM table ## SHA256 {#sha256} -Вычисляет SHA-1, SHA-224, SHA-256 от строки и возвращает полученный набор байт в виде FixedString(20), FixedString(28), FixedString(32). + + +## SHA512 {#sha512} + +Вычисляет SHA-1, SHA-224, SHA-256 хеш строки и возвращает полученный набор байт в виде FixedString(20), FixedString(28), FixedString(32), [FixedString(64)](../data-types/fixedstring.md) + +Вычисляет SHA-512 хеш строки и возвращает полученный набор байт в виде [FixedString(64)](../data-types/fixedstring.md) + +**Синтаксис** + +``` sql +SHA512('s') +``` + Функция работает достаточно медленно (SHA-1 - примерно 5 миллионов коротких строк в секунду на одном процессорном ядре, SHA-224 и SHA-256 - примерно 2.2 миллионов). Рекомендуется использовать эти функции лишь в тех случаях, когда вам нужна конкретная хэш-функция и вы не можете её выбрать. -Даже в этих случаях, рекомендуется применять функцию оффлайн - заранее вычисляя значения при вставке в таблицу, вместо того, чтобы применять её при SELECT-ах. +Даже в этих случаях, рекомендуется применять функцию оффлайн - заранее вычисляя значения при вставке в таблицу, вместо того, чтобы применять её при выполнении `SELECT`. + +**Параметры** + +- `s` — входная строка для вычисления хеша SHA-512. [String](../data-types/string.md). + +**Возвращаемое значение** + +- Хеш SHA-512 в виде шестнадцатеричной некодированной строки FixedString(64). + +Тип: [FixedString](../data-types/fixedstring.md). + +**Пример** + +Используйте функцию [hex](../functions/encoding-functions.md#hex) для представления результата в виде строки с шестнадцатеричной кодировкой. + +Запрос: + +``` sql +SELECT hex(SHA512('abc')); +``` + +Результат: + +``` text +┌─hex(SHA512('abc'))───────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ DDAF35A193617ABACC417349AE20413112E6FA4E89A97EA20A9EEEE64B55D39A2192992A274FC1A836BA3C23A3FEEBBD454D4423643CE80E2A9AC94FA54CA49F │ +└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ +``` ## URLHash(url\[, N\]) {#urlhashurl-n}