SQL 位运算符
位运算符对位模式或二进制数字执行位运算。
运算符 | 含义 | |
---|---|---|
& | 位与 | |
| | 位或 | |
^ | 位异或 | |
>> | 位右移 | |
<< | 位左移 |
&
&
(位与)运算符将左操作数的每一位与右操作数的对应位进行比较。如果两位都为 1,则对应的结果位设置为 1。否则,对应的结果位设置为 0。
SELECT 5 & 3
Int64(5) & Int64(3) |
---|
1 |
|
|
(位或或包含性 OR)运算符将左操作数的每一位与右操作数的对应位进行比较。如果任何一位为 1,则对应的结果位设置为 1。否则,对应的结果位设置为 0。
SELECT 5 | 3
Int64(5) | Int64(3) |
---|
7 |
^
^
(位异或或排他性 OR)运算符将左操作数的每一位与右操作数的对应位进行比较。如果其中一个操作数中的位为 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 支持。