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
廣告