SQL 位运算符
位运算符对位模式或二进制数字执行位运算。
| 运算符 | 含义 | |
|---|---|---|
& | 按位与 | |
| | 按位或 | |
^ | 按位异或 | |
>> | 按位右移 | |
<< | 按位左移 |
&
&(按位 AND)运算符将左操作数的每一位与右操作数的相应位进行比较。如果两个位都是 1,则相应结果位设置为 1。否则,相应结果位设置为 0。
SELECT 5 & 3| Int64(5) & Int64(3) |
|---|
| 1 |
|
|(按位 OR 或包含性 OR)运算符将左操作数的每一位与右操作数的相应位进行比较。如果任一位是 1,则相应结果位设置为 1。否则,相应结果位设置为 0。
SELECT 5 | 3| Int64(5) | Int64(3) |
|---|
| 7 |
^
^(按位 XOR 或异或)运算符将左操作数的每一位与右操作数的相应位进行比较。如果其中一个操作数的位是 0 而另一个操作数的位是 1,则相应结果位设置为 1。否则,相应结果位设置为 0。
SELECT 5 ^ 3| Int64(5) BIT_XOR Int64(3) |
|---|
| 6 |
>>
>>(按位右移)运算符将左操作数的位向右移动右操作数指定的位数。对于无符号数,移位操作产生的空位用 0 填充。对于有符号数,符号位用于填充产生的空位。如果数字为正,则用 0 填充位。如果数字为负,则用 1 填充位。
SELECT 5 >> 3| Int64(5) >> Int64(3) |
|---|
| 0 |
<<
<<(按位左移)运算符将左操作数的位向左移动右操作数指定的位数。移位操作产生的空位用 0 填充。从末端移出的位将被丢弃,包括符号位。
SELECT 5 << 3| Int64(5) << Int64(3) |
|---|
| 40 |
此页面是否有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一员!我们欢迎并鼓励您对 InfluxDB 3 Core 和本文档提供反馈和错误报告。要获得支持,请使用以下资源
具有年度合同或支持合同的客户可以 联系 InfluxData 支持。