# 10.9.1 utf8mb4 字符集(4 字节 UTF-8 Unicode 编码)

utfmb4字符集具有以下特点:

  • 支持 BMP 和补充字符。

  • 每个多字节字符最多需要四个字节。

utf8mb4utf8mb3字符集,仅支持 BMP 字符,每个字符最多使用三个字节:

  • 对于 BMP 字符,utf8mb4utf8mb3具有相同的存储特性:相同的代码值、相同的编码、相同的长度。

  • 对于一个补充字符,utf8mb4需要四个字节来存储它,而utf8mb3根本无法存储角色。转换时utf8mb3列到utf8mb4,您不必担心转换补充字符,因为没有。

utf8mb4是一个超集utf8mb3,所以对于如下的连接这样的操作,结果是有字符集的utf8mb4和校对utf8mb4_col

SELECT CONCAT(utf8mb3_col, utf8mb4_col);

同样,下面的比较在哪里子句根据排序规则工作utf8mb4_col

SELECT * FROM utf8mb3_tbl, utf8mb4_tbl
WHERE utf8mb3_tbl.utf8mb3_col = utf8mb4_tbl.utf8mb4_col;

有关与多字节字符集相关的数据类型存储的信息,请参阅字符串类型存储要求.