• 技术文章 >数据库 >mysql教程

    MySQL中CHARACTER_LENGTH()函数的用法详解

    藏色散人藏色散人2019-04-25 17:06:09原创5685
    在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';

    我们仍然得到相同的结果:

    +--------+
    | Result |
    +--------+
    |      3 |
    +--------+

    但是,如果使用LENGTH()函数,结果将是6。这是因为Unicode字符串每个字符存储2个字节,LENGTH()函数返回以字节为单位测量的长度。

    相关推荐:《mysql教程

    php入门到就业线上直播课:查看学习

    以上就是MySQL中CHARACTER_LENGTH()函数的用法详解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    千万级数据并发解决方案(理论+实战):点击学习

    Mysql单表千万级数据量的查询优化与性能分析

    Mysql主从原理及其在高并发系统中的应用

    专题推荐:MySQL CHARACTER_LENGTH()
    上一篇:SQL2000安装窗口不出现怎么办 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• MySQL中RLIKE运算符的使用详解• 【MySQL】information_schema库中包含所有表的字段信息• 怎样使PHP与MySQL数据库进行持久连接• mysql默认事务隔离级别是什么?
    1/1

    PHP中文网