Sobes.tech
Middle

Jak v SQLu zacházet s nulovými hodnotami a jak se vyhnout chybám při počítání unikátních hodnot?

sobes.tech AI

Odpověď od AI

V SQL při počítání unikátních hodnot je důležité správně zacházet s NULL, protože NULL není rovno žádné hodnotě, včetně sebe sama.

Abychom se vyhnuli chybám a získali správný výsledek:

  • Použijte COUNT(DISTINCT sloupec) — ignoruje hodnoty NULL.
  • Pokud chcete brát NULL jako samostatnou unikátní hodnotu, můžete NULL nahradit speciální hodnotou pomocí COALESCE.

Příklad:

-- Počet unikátních hodnot bez zohlednění NULL
SELECT COUNT(DISTINCT název_sloupce) FROM název_tabulky;

-- Počet unikátních hodnot s zohledněním NULL jako samostatné hodnoty
SELECT COUNT(DISTINCT COALESCE(název_sloupce, 'NÁHRADA_NULL')) FROM název_tabulky;

Kde 'NÁHRADA_NULL' je jakákoli hodnota, která se v sloupci nevyskytuje, například '__NULL__'. To umožňuje počítat NULL jako samostatný unikátní prvek.