sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Cómo determinar si NULL está contenido en una matriz en Postgres?

Una construcción más, como propuso @Clodoaldo Neto. Solo una expresión más 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)
;