mysql length与char_length有什么区别,有什么不同?
程序员文章站
2022-04-18 11:07:36
...
length: 是计算字段的长度一个汉字是算三个字符,一个数字或字母算一个字符
char_length:不管汉字还是数字或者是字母都算是一个字符
例子:
1、你要查的的数据时英文状态下的3个字符, 那个这种查询你就需要用length这个mysql的函数来实现了,length是计算字段的长度一个汉字是算三个字符,一个数字或字母算一个字符
select * from user where length(username) = 3
这样查询的结果会是出现所有3个字符的用户名字段全部显示出来,不会出现3个汉字的用户名出来
2、你要查询的是只要是占了三个位置的摸一个字段, 那你就应该使用char_length这个来查询,这个函数是不管汉字还是数字或者是字母都算是一个字符,
select * from user where char_length(username) = 3
length: 是计算字段的长度一个汉字是算三个字符,也有可能是4个或者其他, 这个要看你数据库的编码,一个数字或字母算一个字符
注意,对于多字节字符,其CHAR_LENGTH()仅计算一次。
SELECT Name, CHAR_LENGTH(Name) AS CharLength
FROM DVDs
WHERE CHAR_LENGTH(Name)>5
ORDER BY Name;