Calcula o valor agregado aplicando a operação BIT XOR aos valores de entrada value.
Formato do comando
BIGINT BITWISE_XOR_AGG([DISTINCT] BIGINT|INT|SMALLINT|TINYINT value)
Descrição dos parâmetros
DISTINCT: opcional. Se especificado, cada valor distinto em
DISTINCTé agregado apenas uma vez no resultado.value: obrigatório. Valores dos tipos BIGINT, INT, SMALLINT ou TINYINT. Valores NULL não participam do cálculo.
Valor de retorno
Retorna um valor BIGINT com o resultado da operação BIT XOR aplicada a todos os valores de entrada.
Retorna erro se value não for do tipo BIGINT, INT, SMALLINT ou TINYINT.
Retorna NULL se value for NULL.
Exemplos de uso
-- 示例一
SELECT id, BITWISE_XOR_AGG(v) FROM
VALUES (1L, 2L), (1L, 1L), (2L, NULL), (1L, NULL) t(id, v) GROUP BY id;
-- 返回结果
+------------+------------+
| id | _c1 |
+------------+------------+
| 1 | 3 |
| 2 | NULL |
+------------+------------+
-- 示例二
SELECT id, BITWISE_XOR_AGG(DISTINCT v) FROM
VALUES (1L, 2L), (1L, 1L), (1L, 1L), (2L, NULL), (1L, NULL) t(id, v) GROUP BY id;
-- 返回结果
+------------+------------+
| id | _c1 |
+------------+------------+
| 1 | 3 |
| 2 | NULL |
+------------+------------+