跳到主要内容

CHAR

描述

CHAR 函数将每个参数解释为整数,并返回一个由这些整数代码值组成字符的字符串。

语法

CHAR(<expr>[, <expr> ...] [USING <charset_name>])

参数

参数说明
<expr>需要转换为字符的整数代码值。类型:INT

返回值

返回 VARCHAR 类型,为由参数整数代码值对应字符组成的字符串。

特殊情况:

  • 如果任意参数为 NULL,返回空字符串
  • 如果结果字符串对于给定字符集是非法的,返回 NULL
  • 大于 255 的参数会被转换为多字节字符。例如 CHAR(15049882) 等价于 CHAR(229, 164, 154)

示例

  1. 基本用法:ASCII 字符生成
SELECT CHAR(68, 111, 114, 105, 115);
+--------------------------------------+
| char('utf8', 68, 111, 114, 105, 115) |
+--------------------------------------+
| Doris |
+--------------------------------------+
  1. 多字节 UTF-8 字符(中文)
SELECT CHAR(15049882, 15179199, 14989469);
+--------------------------------------------+
| char('utf8', 15049882, 15179199, 14989469) |
+--------------------------------------------+
| 多睿丝 |
+--------------------------------------------+
  1. 非法字符返回 NULL
SELECT CHAR(255);
+-------------------+
| char('utf8', 255) |
+-------------------+
| NULL |
+-------------------+
  1. NULL 值处理
SELECT CHAR(NULL);
+------------+
| CHAR(NULL) |
+------------+
| |
+------------+