Middle
Какво връщат агрегатните и неагрегатните функции в SQL заявка?
sobes.tech AI
Отговор от AI
Агрегатните функции в SQL връщат една стойност, която е резултатът от изчислението върху група от редове. Например, функциите SUM(), COUNT(), AVG(), MAX(), MIN() агрегират данните и връщат крайна стойност.
Неагрегатните функции (скаларни функции) се прилагат към отделни стойности и връщат резултат за всеки ред. Например, функции за работа със стрингове (UPPER(), LOWER()), математически функции (ABS(), ROUND()) връщат преобразувана стойност за всеки запис.
Пример:
SELECT department_id, COUNT(*) AS employee_count
FROM employees
GROUP BY department_id;
Тук COUNT(*) е агрегатна функция, която връща броя на служителите във всеки отдел.
За разлика от това:
SELECT employee_name, UPPER(employee_name) AS name_upper
FROM employees;
UPPER() е неагрегатна функция, която връща преобразувана стойност за всеки ред.