Introduction to Bitwise Functions in GBase 8a MPP Cluster

Bitwise Function Usage Guide

GBase 8a MPP Cluster uses the BIGINT (64-bit) algorithm for bitwise operations. Therefore, the maximum valid range for these operators is 64 bits.

Note: Bitwise operations only support numerical types.


This content originally appeared on DEV Community and was authored by Cong Li

Bitwise Function Usage Guide

GBase 8a MPP Cluster uses the BIGINT (64-bit) algorithm for bitwise operations. Therefore, the maximum valid range for these operators is 64 bits.

Note: Bitwise operations only support numerical types.

1. | (Bitwise OR)

Example

Returns the result of 29 | 15.

gbase> SELECT 29 | 15 FROM dual;
+---------+
| 29 | 15 |
+---------+
|      31 |
+---------+
1 row in set

Explanation: The bit value of 29 is 11101, and the bit value of 15 is 1111. Performing a bitwise OR operation results in 11111, which corresponds to the decimal value 31.

2. & (Bitwise AND)

Example

Returns the result of 29 & 15.

gbase> SELECT 29 & 15 FROM dual;
+---------+
| 29 & 15 |
+---------+
|      13 |
+---------+
1 row in set

Explanation: The bit value of 29 is 11101, and that of 15 is 1111. Performing a bitwise AND operation results in 1101, which corresponds to the decimal value 13.

3. ^ (Bitwise XOR)

Examples

Example 1: Returns the result of 1 ^ 1.

gbase> SELECT 1 ^ 1 FROM dual;
+-------+
| 1 ^ 1 |
+-------+
|     0 |
+-------+
1 row in set

Example 2: Returns the result of 1 ^ 0.

gbase> SELECT 1 ^ 0 FROM dual;
+-------+
| 1 ^ 0 |
+-------+
|     1 |
+-------+
1 row in set

Example 3: Returns the result of 11 ^ 3.

gbase> SELECT 11 ^ 3 FROM dual;
+--------+
| 11 ^ 3 |
+--------+
|      8 |
+--------+
1 row in set

Explanation: The bit value of 11 is 1011, and that of 3 is 0011. Performing a bitwise XOR operation results in 1000, which corresponds to the decimal value 8.

4. << (Left Shift - BIGINT)

Example

Returns the result of 1 << 2.

gbase> SELECT 1 << 2 FROM dual;
+--------+
| 1 << 2 |
+--------+
|      4 |
+--------+
1 row in set

Explanation: The bit value of 1 is 0001. Shifting two positions to the left results in 0100, which corresponds to the decimal value 4.

5. >> (Right Shift - BIGINT)

Example

Returns the result of 4 >> 2.

gbase> SELECT 4 >> 2 FROM dual;
+--------+
| 4 >> 2 |
+--------+
|      1 |
+--------+
1 row in set

Explanation: The bit value of 4 is 0100. Shifting two positions to the right results in 0001, which corresponds to the decimal value 1.

6. BIT_COUNT(N)

Function Description: Returns the total number of bits set to 1 in the parameter N.

Example

Returns the number of bits set to 1 in 29.

gbase> SELECT BIT_COUNT(29) FROM dual;
+---------------+
| BIT_COUNT(29) |
+---------------+
|             4 |
+---------------+
1 row in set

Explanation: The bit value of 29 is 11101, and the number of bits set to 1 is 4.

These are the main bitwise functions in GBase 8a MPP Cluster. Thank you for reading!


This content originally appeared on DEV Community and was authored by Cong Li


Print Share Comment Cite Upload Translate Updates
APA

Cong Li | Sciencx (2024-09-05T02:32:25+00:00) Introduction to Bitwise Functions in GBase 8a MPP Cluster. Retrieved from https://www.scien.cx/2024/09/05/introduction-to-bitwise-functions-in-gbase-8a-mpp-cluster/

MLA
" » Introduction to Bitwise Functions in GBase 8a MPP Cluster." Cong Li | Sciencx - Thursday September 5, 2024, https://www.scien.cx/2024/09/05/introduction-to-bitwise-functions-in-gbase-8a-mpp-cluster/
HARVARD
Cong Li | Sciencx Thursday September 5, 2024 » Introduction to Bitwise Functions in GBase 8a MPP Cluster., viewed ,<https://www.scien.cx/2024/09/05/introduction-to-bitwise-functions-in-gbase-8a-mpp-cluster/>
VANCOUVER
Cong Li | Sciencx - » Introduction to Bitwise Functions in GBase 8a MPP Cluster. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2024/09/05/introduction-to-bitwise-functions-in-gbase-8a-mpp-cluster/
CHICAGO
" » Introduction to Bitwise Functions in GBase 8a MPP Cluster." Cong Li | Sciencx - Accessed . https://www.scien.cx/2024/09/05/introduction-to-bitwise-functions-in-gbase-8a-mpp-cluster/
IEEE
" » Introduction to Bitwise Functions in GBase 8a MPP Cluster." Cong Li | Sciencx [Online]. Available: https://www.scien.cx/2024/09/05/introduction-to-bitwise-functions-in-gbase-8a-mpp-cluster/. [Accessed: ]
rf:citation
» Introduction to Bitwise Functions in GBase 8a MPP Cluster | Cong Li | Sciencx | https://www.scien.cx/2024/09/05/introduction-to-bitwise-functions-in-gbase-8a-mpp-cluster/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.