De &&
operator ondersteunt NULL
niet waarden. Je hebt dus een andere aanpak nodig. U kunt de gegevens bijvoorbeeld eerst aan de tabel toevoegen. Dit geeft je de id
s die zijn gekoppeld aan uw vereiste gegevens. Bij de tweede stap kunt u alle waarden rangschikken met behulp van deze id
v.
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
- Maak een tabel of zoekresultaat met uw relevante gegevens, incl. de
NULL
waarde. - Je kunt de gegevens samenvoegen, incl. de
NULL
waarde, met behulp van de operatorIS NOT DISTINCT FROM
, die rekening houdt met deNULL
. - Je hebt nu de relevante
id
opgehaald waarden die kunnen worden gebruikt in deWHERE
filter - Eindelijk kunt u uw aggregatie doen