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如下-
| name | marks | grade |
|---|---|---|
| Raju | 80 | A |
| Rahman | 60 | B |
| Robert | 45 | C |
以下查询从"STUDENTS_TABLE"表中检索学生姓名的长度 -
SELECT name, OCTET_LENGTH(name), marks, OCTET_LENGTH(marks), grade FROM STUDENTS_TABLE;
执行上述代码后,我们得到以下输出 -
| name | OCTET_LENGTH(name) | marks | OCTET_LENGTH(marks) | grade |
|---|---|---|---|---|
| Raju | 4 | 80 | 2 | A |
| Rahman | 6 | 60 | 2 | B |
| Robert | 6 | 45 | 2 | C |
mysql-octet-length-function.html