MySQL BIT_LENGTH() 函数



MySQL 的 BIT_LENGTH() 函数用于查找字符串的比特长度。此函数接受一个字符串作为输入,并返回该字符串的比特长度。如果输入字符串为 NULL,则返回 NULL 作为结果。如果输入字符串为空字符串,则此函数返回 0 作为结果。

当处理二进制数据时,此函数非常有用,因为它允许您确定存储给定字符串所需的比特数。

语法

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

BIT_LENGTH(str)

参数

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

返回值

此函数返回给定值的字符串长度。

示例

以下是 MySQL BIT_LENGTH() 函数的示例。在这里,我们检索字符串“Tutorialspoint”的长度:

SELECT BIT_LENGTH('Tutorialspoint');

以下是上述代码的输出:

BIT_LENGTH('Tutorialspoint')
112

示例

以下是另一个使用不同字符串的示例:

SELECT BIT_LENGTH('Test');

上述代码的输出如下所示:

BIT_LENGTH('Test')
32

示例

如果将数值作为参数传递,则此函数返回表示该值所需的比特数:

SELECT BIT_LENGTH(2254);

获得的输出为 32,因为 2254 需要 32 个比特(每位 8 个比特)来表示:

BIT_LENGTH(2254)
32

示例

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

SELECT BIT_LENGTH('');

产生的结果如下:

BIT_LENGTH('')
0

示例

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

SELECT BIT_LENGTH(NULL);

我们得到以下输出:

BIT_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 *, BIT_LENGTH(name) FROM STUDENTS_TABLE;

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

name marks grade BIT_LENGTH(name)
Raju 32 80 A
Rahman 48 60 B
Robert 48 45 C
mysql-bit-length-function.htm
广告