gpt4 book ai didi

sql - 如何确定 NULL 是否包含在 Postgres 的数组中?

转载 作者:行者123 更新时间:2023-11-29 11:11:37 25 4
gpt4 key购买 nike

如何确定 Postgres 中的数组中是否包含 NULL?目前使用 Postgres 9.3.3。

如果我使用以下选择进行测试,它会返回 contains_null = false

select ARRAY[NULL,1,2,3,4,NULL]::int[] @> ARRAY[NULL]::int[] AS contains_null
select ARRAY[NULL,1,2,3,4,NULL]::int[] @> NULL AS contains_null

我也尝试过:

  1. @>(包含)
  2. <@(包含于)
  3. &&(重叠)

最佳答案

还有一个构造,就像@Clodoaldo Neto 提议的那样。只是更紧凑的表达:

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)
;

关于sql - 如何确定 NULL 是否包含在 Postgres 的数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22695015/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com