MySQL BIN() 函数



MySQL 的BIN()函数是一个内置的字符串函数,它将整数值转换为其二进制等效字符串。

此函数接受一个 longlong (BIGINT) 数值作为参数,并返回二进制值的字符串表示。如果将 NULL 值作为参数传递,则函数将返回 NULL。

二进制表示是基数为 2 的数字系统,只有两个数字:0 和 1。

语法

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

BIN(N)

参数

此函数采用整数值作为参数。

返回值

此函数返回给定整数的二进制表示形式的字符串。

示例

以下是 MySQL BIN() 函数的示例。在这里,我们检索数字 255 的二进制表示:

SELECT BIN(225);

以下是上述代码的输出:

BIN(225)
11100001

示例

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

SELECT BIN(53558);

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

BIN(53558)
1101000100110110

示例

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

SELECT BIN('test');

获得的输出如下:

BIN('test')
0

示例

BIN() 函数等效于基数为 10 和基数为 2 的 CONV() 函数:

SELECT CONV(2256,10,2);

CONV()生成的結果如下:

CONV(2256,10,2)
100011010000

如果将相同的值传递给 BIN() 函数,则结果将相同:

SELECT BIN(2256);

我们得到以下输出:

BIN(2256)
100011010000

示例

如果将 NULL 值作为参数传递给 BIN() 函数,则它返回 NULL:

SELECT BIN(NULL);

以下是上述代码的输出:

BIN(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 *, BIN(marks) FROM STUDENTS_TABLE;

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

姓名 (name) 分数 (marks) 等级 (grade) BIN(marks)
Raju 80 A 1010000
Rahman 60 B 111100
Robert 45 C 101101
mysql-bin-function.htm
广告