ホームページ >データベース >mysql チュートリアル >mysql length与char_length有什么区别,有什么不同?

mysql length与char_length有什么区别,有什么不同?

WBOY
WBOYオリジナル
2016-06-01 09:56:491323ブラウズ

length: 是计算字段的长度一个汉字是算三个字符,一个数字或字母算一个字符

char_length:不管汉字还是数字或者是字母都算是一个字符

例子:

1、你要查的的数据时英文状态下的3个字符, 那个这种查询你就需要用length这个mysql的函数来实现了,length是计算字段的长度一个汉字是算三个字符,一个数字或字母算一个字符

<code class="language-sql">select * from user where length(username) = 3</code>

这样查询的结果会是出现所有3个字符的用户名字段全部显示出来,不会出现3个汉字的用户名出来

 

2、你要查询的是只要是占了三个位置的摸一个字段, 那你就应该使用char_length这个来查询,这个函数是不管汉字还是数字或者是字母都算是一个字符,

<code class="language-sql">select * from user where char_length(username) = 3</code>

length: 是计算字段的长度一个汉字是算三个字符,也有可能是4个或者其他, 这个要看你数据库的编码,一个数字或字母算一个字符

注意,对于多字节字符,其CHAR_LENGTH()仅计算一次。

<code class="language-sql">SELECT Name, CHAR_LENGTH(Name) AS CharLength
FROM DVDs
WHERE CHAR_LENGTH(Name)>5
ORDER BY Name;</code>

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。