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.html