在 MySQL 中查询(限制)字符串长度使用 length 或 char_length 关键字,两者的区别是 LENGTH()
以字节计算而 CHAR_LENGTH()
以字符计算。这意味着,对于一个包含 5 个 2 字节字符的字符串,LENGTH()
返回 10,而 CHAR_LENGTH()
返回 5。如果 str 是 NULL ,则返回NULL。
比如中文在 MYSQL UTF-8 编码下,一个字符占3个字节。因此如果查询中文字符串长度应该用 CHAR_LENGTH()
。
具体用法如下:
查询 nickname 字段长度大于10的记录:
select * from tablename where length(nickname)>10
select * from tablename where char_length(nickname)>10
查询 nickname 字段长度小于或等于5的记录:
select * from tablename where length(nickname) <= 5
select * from tablename where char_length(nickname) <= 5
查询指定字符串长度:
mysql> SELECT CHAR_LENGTH('你好,www.codesou.cn');//16,以字符为单位,总计16个字符
mysql> SELECT LENGTH('你好,www.codesou.cn');//22,以字节为单位,UTF-8编码下"你好,"每个字符占3个字节,共9+13=22个字节
想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » MySQL数据库查询字符串长度大于、小于或等于指定值的记录,MySQL查询限制字符串长度的方法
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » MySQL数据库查询字符串长度大于、小于或等于指定值的记录,MySQL查询限制字符串长度的方法