最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

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

来源:动视网 责编:小采 时间:2020-11-09 08:38:03
文档

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

MySQL中CHARACTER_LENGTH()函数的用法详解:在MySQL中,CHARACTER_LENGTH()函数返回字符串的长度,以字符为单位。CHARACTER_LENGTH()是CHAR_LENGTH()函数的同义词。语法是这样的:CHARACTER_LENGTH(str)其中str是返回长度的字符串。例1 -基本用法下面是一个基本用法的例子:SELECT CHARA
推荐度:
导读MySQL中CHARACTER_LENGTH()函数的用法详解:在MySQL中,CHARACTER_LENGTH()函数返回字符串的长度,以字符为单位。CHARACTER_LENGTH()是CHAR_LENGTH()函数的同义词。语法是这样的:CHARACTER_LENGTH(str)其中str是返回长度的字符串。例1 -基本用法下面是一个基本用法的例子:SELECT CHARA


在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中CHARACTER_LENGTH()函数的用法详解

MySQL中CHARACTER_LENGTH()函数的用法详解:在MySQL中,CHARACTER_LENGTH()函数返回字符串的长度,以字符为单位。CHARACTER_LENGTH()是CHAR_LENGTH()函数的同义词。语法是这样的:CHARACTER_LENGTH(str)其中str是返回长度的字符串。例1 -基本用法下面是一个基本用法的例子:SELECT CHARA
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top