&&
toán tử không hỗ trợ NULL
các giá trị. Vì vậy, bạn cần một cách tiếp cận khác. Ví dụ, bạn có thể nối dữ liệu vào bảng trước. Điều này cung cấp cho bạn id
s được liên kết với dữ liệu yêu cầu của bạn. Ở bước thứ hai, bạn có thể tổng hợp tất cả các giá trị bằng cách sử dụng id
này s.
bản trình diễn từng bước:db <> fiddle
SELECT
id,
ARRAY_AGG(session_os) -- 4
FROM t
WHERE id IN ( -- 3
SELECT
id
FROM
t
JOIN (
SELECT unnest(ARRAY[1, null]) as a -- 1
)s ON s.a IS NOT DISTINCT FROM t.session_os -- 2
)
GROUP BY id
- Tạo một bảng hoặc kết quả truy vấn chứa dữ liệu có liên quan của bạn, bao gồm
NULL
giá trị. - Bạn có thể kết hợp dữ liệu, bao gồm
NULL
giá trị, sử dụng toán tửIS NOT DISTINCT FROM
, coiNULL
. - Bây giờ bạn đã tìm nạp
id
có liên quan các giá trị có thể được sử dụng trongWHERE
bộ lọc - Cuối cùng, bạn có thể thực hiện việc tổng hợp của mình