MySQL - BIN() Function



The MySQL BIN() function is a built-in string function that converts an integer value to its binary equivalent as a string.

This function accepts a longlong (BIGINT) numeric value as its parameter and returns the string representation of the binary value. If you pass a NULL value as the argument, the function will return NULL.

The binary representation is a base-2 numeral system with only two digits: 0 and 1.

Syntax

Following is the syntax of MySQL BIN() function −

BIN(N)

Parameters

This function takes an integer value as a parameter.

Return Value

This function returns the binary representation of the given integer as a string.

Example

Following is an example of the MySQL BIN() function. Here, we are retrieving the binary representation of the number 255 −

SELECT BIN(225);

Following is the output of the above code −

BIN(225)
11100001

Example

Following is another example with a different number −

SELECT BIN(53558);

Output of the above code is as shown below −

BIN(53558)
1101000100110110

Example

If you pass a string value as an argument, the function will return 0 −

SELECT BIN('test');

The output obtained is as follows −

BIN('test')
0

Example

The BIN() function is equivalent to the CONV() function with base 10 and base 2 −

SELECT CONV(2256,10,2);

The result produced by CONV() is as follows −

CONV(2256,10,2)
100011010000

If you pass the same value to the BIN() function, the result will be the same −

SELECT BIN(2256);

We get the output as follows −

BIN(2256)
100011010000

Example

If a NULL value is passed as the parameter to the BIN() function, it returns NULL −

SELECT BIN(NULL);

Following is the output of the above code −

BIN(NULL)
NULL

Example

Additionally, you can also pass a column name of a table as a parameter to this function and get binary values for all the numbers in it.

Let us create a table named "STUDENTS_TABLE" and insert records into it using CREATE and INSERT statements as shown below −

CREATE TABLE STUDENTS_TABLE (
   name VARCHAR(15),
   marks INT,
   grade CHAR
);

Now, let us insert records into it using the INSERT statement −

INSERT INTO STUDENTS_TABLE VALUES 
('Raju', 80, 'A'),
('Rahman', 60, 'B'),
('Robert', 45, 'C');

The STUDENTS_TABLE obtained is as follows −

name marks grade
Raju 80 A
Rahman 60 B
Robert 45 C

Following query retrieves the binary values of the marks in the STUDENTS_TABLE, along with other student details −

SELECT *, BIN(marks) FROM STUDENTS_TABLE;

After executing the above code, we get the following output −

name marks grade BIN(marks)
Raju 80 A 1010000
Rahman 60 B 111100
Robert 45 C 101101
mysql-bin-function.htm
Advertisements