Performs a bitwise AND operation on two or more values of Numeric, Varbinary, or Blob type and returns the result. There is a numeric and a binary version of the syntax.
BITAND(nNumericExpression1, nNumericExpression2, ... , nNumericExpression26) |
BITAND(BinaryExpression1, BinaryExpression2, ... , BinaryExpression26) |
Parameters
- nNumericExpression1, nNumericExpression2, ... , nNumericExpression26
- Specifies Numeric values to perform the bitwise AND operation.
- BinaryExpression1, BinaryExpression2, ... , BinaryExpression26
-
Specifies Varbinary or Blob values to perform the bitwise AND operation.
Note: You can specify a maximum of 26 values. The specified values must have the same type. If the specified expressions are not integers, they are converted to integers before performing the operation.
Return Value
Numeric or Varbinary. BITAND(В ) returns the result of the bitwise AND operation performed on the specified expressions.
Note: |
---|
For Varbinary or Blob values, the return value is calculated as if all values are padded with 0h00 on the right of the value up to the length of the longest value. The appropriate operation is then performed between those values. |
Remarks
BITAND(В ) compares each bit in eExpressionN to the corresponding bit in eExpressionN+1. If the bits in eExpressionN and eExpressionN+1 are both 1, the corresponding result bit is set to 1; otherwise, the corresponding result bit is set to 0.
The following table shows the result of a bitwise AND operation on corresponding eExpressionN and eExpressionN+1 bits:
eExpressionN bit | eExpressionN+1 bit | Resulting bit |
---|---|---|
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
Example
В | Copy Code |
---|---|
x = 3 && 0011 binary y = 6 && 0110 binary ? BITAND(x,y) && Returns 2, 0010 binary |