位操作函数
所有文档
menu
没有找到结果,请重新输入

PALO

位操作函数

Doris 支持以下位操作函数:

1.bitand
2.bitnot
3.bitor
4.bitxor

BITAND

Desciption

bitand(integer_type a, same_type b)
  • 功能:按位与运算
  • 返回类型: 和输入类型相同

Example

mysql> select bitand(255, 32767); /* 0000000011111111 & 0111111111111111 */
+--------------------+
| bitand(255, 32767) |
+--------------------+
|                255 |
+--------------------+

mysql> select bitand(32767, 1); /* 0111111111111111 & 0000000000000001 */
+------------------+
| bitand(32767, 1) |
+------------------+
|                1 |
+------------------+

mysql> select bitand(32, 16); /* 00010000 & 00001000 */
+----------------+
| bitand(32, 16) |
+----------------+
|              0 |
+----------------+

mysql> select bitand(12,5); /* 00001100 & 00000101 */
+---------------+
| bitand(12, 5) |
+---------------+
|             4 |
+---------------+

mysql> select bitand(-1,15); /* 11111111 & 00001111 */
+----------------+
| bitand(-1, 15) |
+----------------+
|             15 |
+----------------+

Keywords

bitand

BITNOT

Desciption

bitnot(integer_type a)
  • 功能:按位非运算
  • 返回类型:和输入类型相同

Example

mysql> select bitnot(127); /* 01111111 -> 10000000 */
+-------------+
| bitnot(127) |
+-------------+
|        -128 |
+-------------+

mysql> select bitnot(16); /* 00010000 -> 11101111 */
+------------+
| bitnot(16) |
+------------+
|        -17 |
+------------+

mysql> select bitnot(0); /* 00000000 -> 11111111 */
+-----------+
| bitnot(0) |
+-----------+
|        -1 |
+-----------+

mysql> select bitnot(-128); /* 10000000 -> 01111111 */
+--------------+
| bitnot(-128) |
+--------------+
|          127 |
+--------------+

Keywords

bitnot

BITOR

Desciption

bitor(integer_type a, same_type b)
  • 功能:按位或运算
  • 返回类型:和输入类型相同

Example

mysql> select bitor(1,4); /* 00000001 | 00000100 */
+-------------+
| bitor(1, 4) |
+-------------+
|           5 |
+-------------+

mysql> select bitor(16,48); /* 00001000 | 00011000 */
+---------------+
| bitor(16, 48) |
+---------------+
|            48 |
+---------------+

mysql> select bitor(0,7); /* 00000000 | 00000111 */
+-------------+
| bitor(0, 7) |
+-------------+
|           7 |
+-------------+

Keywords

bitor

BITXOR

Desciption

bitxor(integer_type a, same_type b)
  • 功能:按位异或运算
  • 返回类型:和输入类型相同

Example

mysql> select bitxor(0,15); /* 00000000 ^ 00001111 */
+---------------+
| bitxor(0, 15) |
+---------------+
|            15 |
+---------------+

mysql> select bitxor(7,7); /* 00000111 ^ 00000111 */
+--------------+
| bitxor(7, 7) |
+--------------+
|            0 |
+--------------+

mysql> select bitxor(8,4); /* 00001000 ^ 00000100 */
+--------------+
| bitxor(8, 4) |
+--------------+
|           12 |
+--------------+

mysql> select bitxor(3,7); /* 00000011 ^ 00000111 */
+--------------+
| bitxor(3, 7) |
+--------------+
|            4 |
+--------------+

Keywords

bitxor
聚合函数字符串函数