Verifica se o Array a e o Array b contêm o mesmo elemento.
Syntax
boolean arrays_overlap(array<T> <a>, array<T> <b>)
Parameters
a e b: obrigatórios. Esses parâmetros especificam arrays. T em array<T> especifica o tipo de dado dos elementos nos arrays. Os elementos podem ser de qualquer tipo de dado. Os elementos do Array a e os elementos do Array b devem ser do mesmo tipo de dado.
Os tipos de dados aceitos são:
TINYINT, SMALLINT, INT e BIGINT
FLOAT e DOUBLE
BOOLEAN
DECIMAL e DECIMALVAL
DATE, DATETIME, TIMESTAMP, IntervalDayTime e IntervalYearMonth
STRING, BINARY, VARCHAR e CHAR
ARRAY, STRUCT e MAP
Return value
Retorna um valor do tipo BOOLEAN. O valor de retorno segue as seguintes regras:
Se o Array a contiver pelo menos um elemento presente no Array b e esse elemento não for nulo, o retorno será true.
Se o Array a e o Array b não contiverem o mesmo elemento, ambos não estiverem vazios e um deles ou ambos contiverem um elemento nulo, o retorno será null.
Se o Array a e o Array b não contiverem o mesmo elemento, ambos não estiverem vazios e nenhum deles contiver um elemento nulo, o retorno será false.
Examples
-
Exemplo 1: verificar se
array(1, 2, 3)earray(3, 4, 5)contêm o mesmo elemento. Instrução de exemplo:-- The return value is true. select arrays_overlap(array(1, 2, 3), array(3, 4, 5)); -
Exemplo 2: verificar se
array(1, 2, 3)earray(6, 4, 5)contêm o mesmo elemento. Instrução de exemplo:-- The return value is false. select arrays_overlap(array(1, 2, 3), array(6, 4, 5)); -
Exemplo 3: verificar se um dos arrays contém o elemento nulo. Instrução de exemplo:
-- The return value is null. select arrays_overlap(array(1, 2, 3), array(5, 4, null));
Funções relacionadas
ARRAYS_OVERLAP é uma função de tipo complexo. Para obter mais informações sobre as funções usadas para processar dados de tipos complexos, como ARRAY, MAP, STRUCT e JSON, consulte Complex type functions.