CHAR
描述
CHAR 函数将每个参数解释为整数,并返回一个由这些整数代码值组成字符的字符串。
语法
CHAR(<expr>[, <expr> ...] [USING <charset_name>])
参数
| 参数 | 说明 |
|---|---|
<expr> | 需要转换为字符的整数代码值。类型:INT |
返回值
返回 VARCHAR 类型,为由参数整数代码值对应字符组成的字符串。
特殊情况:
- 如果任意参数为 NULL,返回空字符串
- 如果结果字符串对于给定字符集是非法的,返回 NULL
- 大于 255 的参数会被转换为多字节字符。例如
CHAR(15049882)等价于CHAR(229, 164, 154)
示例
- 基本用法:ASCII 字符生成
SELECT CHAR(68, 111, 114, 105, 115);
+--------------------------------------+
| char('utf8', 68, 111, 114, 105, 115) |
+--------------------------------------+
| Doris |
+--------------------------------------+
- 多字节 UTF-8 字符(中文)
SELECT CHAR(15049882, 15179199, 14989469);
+--------------------------------------------+
| char('utf8', 15049882, 15179199, 14989469) |
+--------------------------------------------+
| 多睿丝 |
+--------------------------------------------+
- 非法字符返回 NULL
SELECT CHAR(255);
+-------------------+
| char('utf8', 255) |
+-------------------+
| NULL |
+-------------------+
- NULL 值处理
SELECT CHAR(NULL);
+------------+
| CHAR(NULL) |
+------------+
| |
+------------+