CHARACTER_LENGTH
CHARACTER_LENGTH() 函数:
-
对于 CHAR 和 VARCHAR 列,返回以 UTF-8 字符数表示的字符串长度
-
对于 BINARY 和 VARBINARY 列,返回以字节(八位字节)表示的字符串长度
-
去掉 CHAR 表达式中的填充值,但是不去掉 VARCHAR 表达式中的填充值
-
与用于 CHAR 和 VARCHAR 的 LENGTH() 相同。对于二进制类型,CHARACTER_LENGTH() 与 OCTET_LENGTH() 相同。
行为类型
如果为 USING OCTETS
,则是
不可变,否则为
稳定。
语法
[ CHAR_LENGTH | CHARACTER_LENGTH ] ( expression ... [ USING { CHARACTERS | OCTETS } ] )
参数
expression
- (CHAR 或 VARCHAR)是要测量的字符串
USING CHARACTERS | OCTETS
- 确定字符长度是以字节(默认值)还是以八位字节为单位表示的。
示例
=> SELECT CHAR_LENGTH('1234 '::CHAR(10) USING OCTETS);
octet_length
--------------
4
(1 row)
=> SELECT CHAR_LENGTH('1234 '::VARCHAR(10));
char_length
-------------
6
(1 row)
=> SELECT CHAR_LENGTH(NULL::CHAR(10)) IS NULL;
?column?
----------
t
(1 row)