跳到主要内容
版本:Latest-3.2

sha2

功能

计算 SHA-2 系列哈希函数 (SHA-224/SHA-256/SHA-384/SHA-512)。

语法

sha2(expr, hash_length)

参数说明

expr: 待计算的字符串,支持的数据类型为 VARCHAR。

hash_length: 结果所需要的位长度,值必须为 224, 256, 384, 512 或者 0 (相当于 256),支持的数据类型为 INT。

返回值说明

返回哈希函数的计算结果,数据类型为 VARCHAR。如果任意一个输入参数为 NULL,结果返回 NULL。如果 hash_length 不在参数说明中的取值范围内,结果返回 NULL。

示例

mysql> select sha2('abc',224);
+----------------------------------------------------------+
| sha2('abc', 224) |
+----------------------------------------------------------+
| 23097d223405d8228642a477bda255b32aadbce4bda0b3f7e36c9da7 |
+----------------------------------------------------------+
1 row in set (0.01 sec)

mysql> select sha2('abc', 384);
+--------------------------------------------------------------------------------------------------+
| sha2('abc', 384) |
+--------------------------------------------------------------------------------------------------+
| cb00753f45a35e8bb5a03d699ac65007272c32ab0eded1631a8b605a43ff5bed8086072ba1e7cc2358baeca134c825a7 |
+--------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> select sha2('abc', 1),sha2('abc', null), sha2(null, 384);
+----------------+-------------------+-----------------+
| sha2('abc', 1) | sha2('abc', NULL) | sha2(NULL, 384) |
+----------------+-------------------+-----------------+
| NULL | NULL | NULL |
+----------------+-------------------+-----------------+
1 row in set (0.01 sec)