Sobes.tech
Junior — Middle

Kuriuose SQL užklausos dalyse galima naudoti agregatines funkcijas rezultatui riboti?

sobes.tech AI

Atsakymas iš AI

SQL agregavimo funkcijos (pvz., COUNT, SUM, AVG, MAX, MIN) gali būti naudojamos šiose užklausos dalyse rezultatui riboti:

  • Sekcijoje SELECT, norint apskaičiuoti agregatus pagal grupes arba visą duomenų rinkinį.
  • Sekcijoje HAVING, norint filtruoti grupes po agregatinių funkcijų taikymo.

Svarbu: agregatines funkcijas negalima naudoti WHERE, nes WHERE filtruoja eilutes prieš grupavimą. Norint apriboti rezultatą pagal agregatus, naudojamas HAVING.

Pavyzdys:

SELECT department, COUNT(*) AS employee_count
FROM employees
GROUP BY department
HAVING COUNT(*) > 5;

Čia HAVING apriboja rezultatą tik tiems skyriams, kuriuose daugiau nei 5 darbuotojai.