# **SHA2()**

## **函数说明**

`SHA2()` 加密函数用于计算输入字符串的 SHA2 哈希值。第一个参数是要散列的明文字符串。第二个参数指示结果的所需位长，其值必须为 224、256、384、512 或 0（相当于 256），分别对应了 SHA-224, SHA-256, SHA-384 和 SHA-512 算法。如果参数是 NULL 或者不是一个合法值将返回 NULL。

## **函数语法**

```text
> SHA2(str, hash_length)
```

## **参数释义**

|  参数        | 说明                                  |
|  --------   | ------------------------------------  |
| str         | 必要参数。要计算哈希值的字符串             |
| hash_length | 必要参数。哈希长度。                     |

## **示例**

```text
mysql> select sha2("hello world", 384);
+--------------------------------------------------------------------------------------------------+
| sha2(hello world, 384)                                                                           |
+--------------------------------------------------------------------------------------------------+
| fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd |
+--------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> select sha2(null, 512);
+-----------------+
| sha2(null, 512) |
+-----------------+
| NULL            |
+-----------------+
1 row in set (0.00 sec)

mysql> select sha2("abc", 99);
+---------------+
| sha2(abc, 99) |
+---------------+
| NULL          |
+---------------+
1 row in set (0.00 sec)
```
