Združevalne funkcije v MySQL nam omogočajo izvajanje operacij nad množico vrednosti za pridobitev enega rezultata. Te funkcije so posebej uporabne pri analizi podatkov, saj lahko z njimi izračunamo vsote, povprečja, štejemo zapise in najdemo ekstremne vrednosti. Običajno se uporabljajo v kombinaciji z GROUP BY stavkom.
Prešteje število vseh zaposlenih v tabeli.
SELECT COUNT(*) AS stevilo_zaposlenih FROM zaposleni;
Prikaže število zaposlenih v vsakem oddelku.
SELECT oddelek, COUNT(*) AS stevilo_zaposlenih FROM zaposleni GROUP BY oddelek;
Izračuna povprečno plačo za vsak oddelek posebej.
SELECT oddelek, AVG(placa) AS povprecna_placa FROM zaposleni GROUP BY oddelek;
Za vsak oddelek prikaže število zaposlenih, najnižjo plačo, najvišjo plačo in povprečno plačo.
SELECT oddelek, COUNT(*) AS stevilo_zaposlenih, MIN(placa) AS najnizja_placa, MAX(placa) AS najvisja_placa, AVG(placa) AS povprecna_placa FROM zaposleni GROUP BY oddelek;
Prikaže vse podatke o zaposlenih, ki imajo plačo višjo od 1900 €.
SELECT * FROM zaposleni WHERE placa > 1900;
Prešteje število zaposlenih v oddelku Proizvodnja.
SELECT COUNT(*) AS stevilo FROM zaposleni WHERE oddelek = 'Proizvodnja';
Prikaže seznam vseh različnih oddelkov v podjetju, brez ponavljanja.
SELECT DISTINCT oddelek FROM zaposleni;
Prešteje število različnih oddelkov v podjetju.
SELECT COUNT(DISTINCT oddelek) AS stevilo_oddelkov FROM zaposleni;
Združevalne (agregacijske) funkcije v MySQL vzamejo vrednosti iz več vrstic skupaj in jih izračunajo v eno enotno zbirno vrednost. Izjemno pogosto se uporabljajo za statistike, poročila in analizo podatkov v kombinaciji s ključno besedo GROUP BY.
| Funkcija | Opis in delovanje | Sintaksa (HTML) | Primer v simulatorju |
|---|---|---|---|
| COUNT() | Prešteje skupno število vrstic v posamezni skupini (ignorira vrednosti NULL). | COUNT(stolpec) |
SELECT oddelek, COUNT(*) FROM zaposleni GROUP BY oddelek; |
| SUM() | Izračuna in vrne skupno vsoto številskih vrednosti za vsako skupino posebej. | SUM(stolpec) |
SELECT oddelek, SUM(placa) FROM zaposleni GROUP BY oddelek; |
| AVG() | Izračuna povprečno vrednost (aritmetično sredino) številk znotraj skupine. | AVG(stolpec) |
SELECT oddelek, AVG(placa) FROM zaposleni GROUP BY oddelek; |
| MIN() | Poišče in vrne najmanjšo (minimalno) vrednost znotraj posamezne skupine. | MIN(stolpec) |
SELECT oddelek, MIN(placa) FROM zaposleni GROUP BY oddelek; |
| MAX() | Poišče in vrne največjo (maksimalno) vrednost znotraj posamezne skupine. | MAX(stolpec) |
SELECT oddelek, MAX(placa) FROM zaposleni GROUP BY oddelek; |
| GROUP_CONCAT() | Združi tekstovne vrednosti iz več vrstic in jih izpiše v eni vrstici kot niz, ločen z vejicami. | GROUP_CONCAT(stolpec) |
SELECT oddelek, GROUP_CONCAT(ime) FROM zaposleni GROUP BY oddelek; |