RANDOM_BYTES
描述
RANDOM_BYTES 函数用于生成指定长度的随机字节序列。返回的字节序列以十六进制字符串形式表示。
语法
RANDOM_BYTES(<len>)
参数
| 参数 | 说明 |
|---|---|
<len> | 需要生成的随机字节数。类型:INT |
返回值
返回 VARCHAR 类型,为十六进制编码的随机字节序列(以 0x 开头)。
特殊情况:
<len>必须大于 0,否则返回错误- 如果参数为 NULL,返回 NULL
- 每次调用生成的结果都是随机的
示例
- 基本用法:生成 8 字节随机序列
SELECT random_bytes(8);
+--------------------+
| random_bytes(8) |
+--------------------+
| 0x1a2b3c4d5e6f7089 |
+--------------------+
- 生成短序列
SELECT random_bytes(4);
+----------------+
| random_bytes(4) |
+----------------+
| 0xab12cd34 |
+----------------+
- 非法参数:负数
SELECT random_bytes(-1);
ERROR 1105 (HY000): errCode = 2, detailMessage = (10.16.10.3)[INVALID_ARGUMENT]argument -1 of function random_bytes at row 0 was invalid.
- NULL 值处理
SELECT random_bytes(NULL);
+--------------------+
| random_bytes(NULL) |
+--------------------+
| NULL |
+--------------------+
- 生成较长序列(16 字节)
SELECT random_bytes(16);
+------------------------------------+
| random_bytes(16) |
+------------------------------------+
| 0x1a2b3c4d5e6f708192a3b4c5d6e7f809 |
+------------------------------------+
Keywords
RANDOM_BYTES