&& operatøren understøtter ikke NULL værdier. Så du har brug for en anden tilgang. For eksempel kan du først forbinde dataene med tabellen. Dette giver dig id s, som er knyttet til dine nødvendige data. På det andet trin er du i stand til at arregere alle værdier ved hjælp af disse id s.
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
- Opret en tabel eller et forespørgselsresultat, som indeholder dine relevante data, inkl.
NULLværdi. - Du kan tilslutte data, inkl.
NULLværdi ved at bruge operatorenIS NOT DISTINCT FROM, som betragterNULL. - Nu har du hentet det relevante
idværdier, som kan bruges iWHEREfilter - Endelig kan du foretage din aggregering