我有两个数组。
b=[11,22,33,44]
如何对两个数组的相应元素进行异或运算以得到结果
结果=[10,20,34,40]即1^11=10,2^22=20,依此类推
我尝试过位XOR(x),但它需要一个数组,并对数组中的所有元素进行XOR。
SELECT BIT_XOR(x) AS bit_xor FROM UNNEST([1, 2, 3, 4]) AS x;
谢谢
您可以将两个数组“压缩”到一起:
SELECT ARRAY( SELECT x ^ b[OFFSET(off)] FROM UNNEST(a) AS x WITH OFFSET off) AS bit_xor FROM dataset.table
这将根据元素在两个数组中的偏移量来组合元素。