按位运算函数

bit_count(x, bits) -> bigint

获取以二进制补码表示的 x(被视为 bits 位有符号整数)中设置的位的数量。

  1. SELECT bit_count(9, 64); -- 2
  2. SELECT bit_count(9, 8); -- 2
  3. SELECT bit_count(-7, 64); -- 62
  4. SELECT bit_count(-7, 8); -- 6

bitwise_and(x, y) -> bigint

返回以二进制补码表示的 xy 的按位与运算结果。

bitwise_not(x) -> bigint

返回以二进制补码表示的 x 的按位取反运算结果。

bitwise_or(x, y) -> bigint

返回以二进制补码表示的 xy 的按位或运算结果。

bitwise_xor(x, y) -> bigint

返回以二进制补码表示的 xy 的按位异或运算结果。

另请参见 bitwise_and_aggbitwise_or_agg