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
NULLwaarde. - Je kunt de gegevens samenvoegen, incl. de
NULLwaarde, met behulp van de operatorIS NOT DISTINCT FROM, die rekening houdt met deNULL. - Je hebt nu de relevante
idopgehaald waarden die kunnen worden gebruikt in deWHEREfilter - Eindelijk kunt u uw aggregatie doen