文档文档

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

此页是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。您可以继续像现在这样使用它,而无需更改任何代码。

阅读更多

现已全面上市

InfluxDB 3 Core 和 Enterprise

快速启动。更快扩展。

获取更新

InfluxDB 3 Core 是一个开源、高速、近实时数据引擎,可实时收集和处理数据,并将其持久化到本地磁盘或对象存储。InfluxDB 3 Enterprise 构建于 Core 的基础上,增加了高可用性、读取副本、增强的安全性以及数据压缩,以实现更快的查询和优化的存储。InfluxDB 3 Enterprise 的免费层可供非商业的家庭或业余爱好者使用。

更多信息,请查看