跳到主要内容

位运算符

StoneDB的位运算符有如下。

位运算符作用
&按位与
|按位或
^按位异或
!取反
<<左移
>>右移

位运算符是在二进制数上进行计算的运算符,位运算会先将操作数变成二进制数进行位运算,然后再将计算结果从二进制数变回十进制数。

> select 3&5;
+-----+
| 3&5 |
+-----+
| 1 |
+-----+
1 row in set (0.00 sec)

> select 3|5;
+-----+
| 3|5 |
+-----+
| 7 |
+-----+
1 row in set (0.00 sec)

> select 3^5;
+-----+
| 3^5 |
+-----+
| 6 |
+-----+
1 row in set (0.00 sec)

> select ~18446744073709551612;
+-----------------------+
| ~18446744073709551612 |
+-----------------------+
| 3 |
+-----------------------+
1 row in set (0.00 sec)

> select 3>>1;
+------+
| 3>>1 |
+------+
| 1 |
+------+
1 row in set (0.00 sec)

> select 3<<1;
+------+
| 3<<1 |
+------+
| 6 |
+------+
1 row in set (0.00 sec)