MySQL BIT_AND Function

MySQL BIT_AND is one of the Aggregate Functions, which performs Bitwise AND operation on all bits. This BIT_AND function first converts all decimal values into binary values and performs bitwise and operations on those binary values.

BIT_AND Syntax

The basic syntax of the BIT_AND Function in MySQL is as shown below:

SELECT BIT_AND (Expression)
FROM [Source]

The Truth Table behind this Bit_And function is

xyx BIT_AND y
000
010
100
111

MySQL BIT_AND Function Example

In this example, we are going to implement the BIT_AND function on different columns in a table. To demonstrate the same, we are going to use the dup employee 2 table data that we have shown below

Table 1

The following MySQL statement finds the Bitwise AND values of Sales 1 and Sales 2 columns.

-- Example
USE company;
SELECT BIT_AND(Sales1),
       BIT_AND(Sales2)
FROM dupemploy2;
Bitwise AND Example 2

x = 9 = 1001

y = 12 = 1100

and the Bitwise AND for the above bits is 1000 = 8

BIT_AND Group By Example

In this example, we are going to use the BIT_AND function along with the Group By clause. For this Aggregate Function example, We are going to use the below shown data

Customer table 1

CODE

-- Example
SELECT Profession,
       Yearly_Income
       ,bit_and(Yearly_Income)
FROM company.dupcustomerdetails
group by Profession;
MySQL BIT_AND Function Example 3

Let me take the Example of the Developer Group

85000 = 10100110000001000
80000 = 10011100010000000
55000 = 01101011011011000

and the MySQL output is 0

About Suresh

Suresh is the founder of TutorialGateway and a freelance software developer. He specialized in Designing and Developing Windows and Web applications. The experience he gained in Programming and BI integration, and reporting tools translates into this blog. You can find him on Facebook or Twitter.