PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Como determinar se NULL está contido em uma matriz no Postgres?


Mais uma construção, como propôs @Clodoaldo Neto. Apenas uma expressão mais compacta:
CREATE TEMPORARY TABLE null_arrays (
      id serial primary key
    , array_data int[]
);

INSERT INTO null_arrays (array_data)
VALUES
      (ARRAY[1,2, NULL, 4, 5])
    , (ARRAY[1,2, 3, 4, 5])
    , (ARRAY[NULL,2, 3, NULL, 5])
;

SELECT 
    *
FROM 
    null_arrays
WHERE
    TRUE = ANY (SELECT unnest(array_data) IS NULL)
;