Sobes.tech
Middle

Cosa restituiscono le funzioni aggregate e non aggregate in una query SQL?

sobes.tech AI

Risposta dell'AI

Le funzioni di aggregazione in SQL restituiscono un singolo valore, che è il risultato del calcolo su un gruppo di righe. Ad esempio, le funzioni SUM(), COUNT(), AVG(), MAX(), MIN() aggregano i dati e restituiscono un valore finale.

Le funzioni non aggregate (funzioni scalari) vengono applicate a valori singoli e restituiscono un risultato per ogni riga. Ad esempio, funzioni di manipolazione delle stringhe (UPPER(), LOWER()), funzioni matematiche (ABS(), ROUND()) restituiscono un valore trasformato per ogni record.

Esempio:

SELECT department_id, COUNT(*) AS employee_count
FROM employees
GROUP BY department_id;

Qui, COUNT(*) è una funzione di aggregazione che restituisce il numero di dipendenti in ogni dipartimento.

Al contrario:

SELECT employee_name, UPPER(employee_name) AS name_upper
FROM employees;

UPPER() è una funzione non aggregata che restituisce un valore trasformato per ogni riga.