MySQL OCTET_LENGTH() 函数



MySQL 的 OCTET_LENGTH() 函数返回提供的字符串的长度(以字节为单位)。

如果将多字节字符作为参数传递,此函数将其计为单个字符并相应地返回长度值。如果将 NULL 传递给此函数,则返回 NULL 作为结果。

MySQL OCTET_LENGTH() 是函数 LENGTH() 的同义词。

语法

以下是 MySQL OCTET_LENGTH() 函数的语法:

OCTET_LENGTH(str)

参数

此函数将字符串或二进制值作为参数。

返回值

此函数返回提供的输入中的字节数。

示例

在以下示例中,我们使用 OCTET_LENGTH() 函数来确定字符串“tutorialspoint”的字节长度:

SELECT OCTET_LENGTH('tutorialspoint');

以上代码的输出如下:

OCTET_LENGTH('tutorialspoint')
14

示例

当您将数值作为参数传递时,此函数会计算给定值中的位数并返回该计数:

SELECT OCTET_LENGTH(225);

获得的输出如下:

OCTET_LENGTH(225)
3

示例

如果将空字符串作为参数传递,则函数返回 0:

SELECT OCTET_LENGTH('');

我们得到如下输出:

OCTET_LENGTH('')
0

示例

当您将 NULL 值作为参数传递时,函数返回 NULL:

SELECT OCTET_LENGTH(NULL);

产生的结果如下所示:

OCTET_LENGTH(NULL)
NULL

示例

您还可以将表的列名作为参数传递给此函数,并获取特定列中值的长度。

让我们创建一个名为“STUDENTS_TABLE”的表,并使用 CREATE 和 INSERT 语句向其中插入记录,如下所示:

CREATE TABLE STUDENTS_TABLE (
   name VARCHAR(15),
   marks INT,
   grade CHAR
);

现在,让我们使用 INSERT 语句向其中插入记录:

INSERT INTO STUDENTS_TABLE VALUES 
('Raju', 80, 'A'),
('Rahman', 60, 'B'),
('Robert', 45, 'C');

获得的 STUDENTS_TABLE 如下:

姓名 分数 等级
Raju 80 A
Rahman 60 B
Robert 45 C

以下查询从“STUDENTS_TABLE”中检索学生姓名的长度:

SELECT name, OCTET_LENGTH(name), marks, OCTET_LENGTH(marks), grade  
FROM STUDENTS_TABLE;

执行上述代码后,我们得到以下输出:

姓名 OCTET_LENGTH(姓名) 分数 OCTET_LENGTH(分数) 等级
Raju 4 80 2 A
Rahman 6 60 2 B
Robert 6 45 2 C
mysql-octet-length-function.htm
广告