扫码关注官方订阅号
84669人学习
65727人学习
82984人学习
467778人学习
498837人学习
471966人学习
256484人学习
152542人学习
224170人学习
139536人学习
81804人学习
85022人学习
11944人学习
20001人学习
60816人学习
5487人学习
15007人学习
2150人学习
6980人学习
194925人学习
359900人学习
1142人学习
19058人学习
3206人学习
180550人学习
48569人学习
17603人学习
40936人学习
1049人学习
750人学习
32909人学习
在mysql中,character_length()函数返回字符串的长度,以字符为单位。
CHARACTER_LENGTH()是CHAR_LENGTH()函数的同义词。
语法是这样的:
CHARACTER_LENGTH(str)
其中str是返回长度的字符串。
例1 -基本用法
下面是一个基本用法的例子:
SELECT CHARACTER_LENGTH('Cat');
结果是这样的:
+-------------------------+ | CHARACTER_LENGTH('Cat') | +-------------------------+ | 3 | +-------------------------+
例2 -末尾有空格
注意,CHARACTER_LENGTH()在其计算中包含末尾空格(例如字符串末尾的空格)。
所以如果我们在前一个例子的末尾加上空格:
SELECT CHARACTER_LENGTH('Cat ');
结果:
+--------------------------+ | CHARACTER_LENGTH('Cat ') | +--------------------------+ | 4 | +--------------------------+
但是我们可以使用TRIM()函数或RTRIM()函数来删除后面的空格:
SELECT CHARACTER_LENGTH(TRIM('Cat ')) AS 'TRIM', CHARACTER_LENGTH(RTRIM('Cat ')) AS 'RTRIM';
+------+-------+ | TRIM | RTRIM | +------+-------+ | 3 | 3 | +------+-------+
例3 -前面有空格
同样的概念也适用于前面空格。你可以使用TRIM或LTRIM:
SELECT CHARACTER_LENGTH(TRIM(' Cat')) AS 'TRIM', CHARACTER_LENGTH(LTRIM(' Cat')) AS 'LTRIM';
结果:
+------+-------+ | TRIM | LTRIM | +------+-------+ | 3 | 3 | +------+-------+
例4 -数据类型
无论字符串存储为什么数据类型,它都将返回相同的结果。这与LENGTH()函数形成对比,如果数据是以Unicode字符串存储的,那么LENGTH()函数将返回双倍的字符数。
在下面的例子中,ArtistName列使用varchar(255):
SELECT CHARACTER_LENGTH(ArtistName) Result FROM Artists WHERE ArtistName = 'Lit';
+--------+ | Result | +--------+ | 3 | +--------+
如果我们修改ArtistName列来使用Unicode:
ALTER TABLE Artists MODIFY COLUMN ArtistName VARCHAR(255) unicode;
并再次运行相同的查询:
SELECT CHARACTER_LENGTH(ArtistName) FROM Artists WHERE ArtistName = 'Lit';
我们仍然得到相同的结果:
但是,如果使用LENGTH()函数,结果将是6。这是因为Unicode字符串每个字符存储2个字节,LENGTH()函数返回以字节为单位测量的长度。
相关推荐:《mysql教程》
以上就是MySQL中CHARACTER_LENGTH()函数的用法详解的详细内容,更多请关注php中文网其它相关文章!
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
精品班
技术支持
技术咨询
学习群
会员优惠
返回顶部