Fix links, add 512 translation.

This commit is contained in:
romanzhukov 2021-09-29 18:41:15 +03:00
parent e312156b1c
commit b226429435
2 changed files with 47 additions and 6 deletions

View File

@ -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**

View File

@ -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}