Sobes.tech
Junior — Middle

Kāda ir HAVING operatora funkcija SQL un kā tā atšķiras no WHERE?

sobes.tech AI

Atbilde no AI

SQL HAVING nosacījums tiek izmantots rezultātu filtrēšanai pēc datu grupēšanas ar GROUP BY. Tas ļauj noteikt nosacījumus agregētajiem datiem.

Atšķirība no WHERE:

  • WHERE filtrē rindas pirms grupēšanas, strādā ar atsevišķiem ierakstiem.
  • HAVING filtrē grupas pēc agregācijas.

Piemērs:

SELECT nodaļa, COUNT(*) kā darbinieku_skaits
FROM darbinieki
GROUP BY nodaļa
HAVING COUNT(*) > 10;

Šeit, WHERE nevar izmantot, lai filtrētu pēc COUNT(*), jo tas ir agregācijas funkcija, bet HAVING ļauj izvēlēties tikai tās nodaļas, kurās ir vairāk nekā 10 darbinieku.