Spoznajte najpomembnejše MySQL funkcije. Na tej strani boste našli pregled vseh ključnih funkcij, njihovo sintakso in praktične primere uporabe. Funkcije so razdeljene v različne kategorije glede na njihovo uporabo.
Poizvedba prikaže imena in priimke prvih 5 zaposlenih iz tabele. Stavek LIMIT 5 omeji rezultate na samo 5 zapisov.
SELECT ime,priimek FROM zaposleni LIMIT 5;
Poizvedba izpiše ime, priimek in plačo vseh zaposlenih, ki delajo v oddelku "Proizvodnja". Stavek WHERE filtrira rezultate tako, da prikaže samo zaposlene iz tega določenega oddelka.
SELECT ime, priimek, placa FROM zaposleni WHERE oddelek = 'Proizvodnja';
Poizvedba prešteje skupno število vseh zaposlenih v tabeli. Funkcija COUNT(*) vrne število vseh vrstic v tabeli.
SELECT COUNT(*) FROM zaposleni;
Poizvedba prešteje število različnih oddelkov v podjetju. Uporaba COUNT(DISTINCT oddelek) zagotavlja, da se vsak oddelek šteje samo enkrat, ne glede na to, koliko zaposlenih dela v posameznem oddelku.
SELECT COUNT(DISTINCT oddelek) FROM zaposleni;
Poizvedba izpiše imena, priimke in plače vseh zaposlenih, razvrščene po plači od najvišje do najnižje. Stavek ORDER BY placa DESC razvrsti rezultate tako, da so najbolje plačani zaposleni prikazani prvi.
SELECT ime, priimek, placa FROM zaposleni ORDER BY placa DESC;
Poizvedba prikaže analizo podatkov po oddelkih. Za vsak oddelek izračuna število zaposlenih (s COUNT) in njihovo povprečno plačo (z AVG). Rezultati so združeni po oddelkih s pomočjo GROUP BY stavka.
SELECT oddelek, COUNT(*) as stevilo_zaposlenih, AVG(placa) as povprecna_placa FROM zaposleni GROUP BY oddelek;
Funkcije v MySQL vam omogočajo izvajanje matematičnih izračunov, manipulacijo z besedilom, delo z datumi ter napredno logično preverjanje podatkov neposredno v vaši poizvedbi. Spodnja tabela ponuja celovit pregled najbolj uporabnih funkcij s primeri za vaš simulator.
| Funkcija | Opis | Sintaksa (HTML) | Primer v simulatorju |
|---|---|---|---|
| COUNT() | Prešteje število vrstic, ki ustrezajo določenemu pogoju. | COUNT(stolpec) |
SELECT COUNT(*) FROM zaposleni WHERE oddelek = 'Uprava'; |
| SUM() | Izračuna skupno vsoto številskih vrednosti v stolpcu. | SUM(stolpec) |
SELECT SUM(placa) FROM zaposleni WHERE oddelek = 'Proizvodnja'; |
| AVG() | Izračuna povprečno vrednost številskega stolpca. | AVG(stolpec) |
SELECT AVG(placa) FROM razvrscanje WHERE oddelek = 'Trgovina'; |
| MIN() | Vrne najmanjšo (minimalno) vrednost v stolpcu. | MIN(stolpec) |
SELECT MIN(placa) FROM zaposleni; |
| MAX() | Vrne največjo (maksimalno) vrednost v stolpcu. | MAX(stolpec) |
SELECT MAX(starost) FROM prva; |
| GROUP_CONCAT() | Združi vrednosti iz več vrstic v en sam tekstovni niz, ločen z vejico. | GROUP_CONCAT(stolpec) |
SELECT GROUP_CONCAT(ime) FROM zaposleni GROUP BY oddelek; |
| CONCAT() | Združi dva ali več tekstovnih nizov v enega. | CONCAT(s1, s2, ...) |
SELECT CONCAT(ime, ' ', priimek) FROM zaposleni; |
| SUBSTRING() | Izreže del besedila iz niza (od določene pozicije naprej). | SUBSTRING(tekst, start, dolzina) |
SELECT SUBSTRING(ime, 1, 3) FROM prva; |
| TRIM() | Odstrani odvečne prazne prostore (presledke) na začetku in koncu besedila. | TRIM(tekst) |
SELECT TRIM(ime) FROM zaposleni; |
| UPPER() | Pretvori vse črke v besedilu v VELIKE ČRKE. | UPPER(tekst) |
SELECT UPPER(priimek) FROM zaposleni; |
| LOWER() | Pretvori vse črke v besedilu v male črke. | LOWER(tekst) |
SELECT LOWER(ime) FROM prva; |
| LENGTH() | Vrne dolžino tekstovnega niza v bajtih/številu znakov. | LENGTH(tekst) |
SELECT LENGTH(ime) FROM zaposleni; |
| REPLACE() | Zamenja vse pojavitve določenega podniza z novim besedilom. | REPLACE(t, stari, novi) |
SELECT REPLACE(oddelek, 'Prodaja', 'Marketing') FROM razvrscanje; |
| NOW() | Vrne trenutni datum in čas za vsako vrstico. | NOW() |
SELECT NOW(), datum_vnosa FROM datumi; |
| CURDATE() | Vrne samo trenutni datum (brez ur in minut). | CURDATE() |
SELECT CURDATE(), datum_vnosa FROM datumi; |
| CURTIME() | Vrne samo trenutni čas (ure, minute, sekunde). | CURTIME() |
SELECT CURTIME() FROM datumi; |
| DATE_FORMAT() | Formatira izpis datuma glede na podano obliko (npr. slovenska oblika). | DATE_FORMAT(datum, format) |
SELECT DATE_FORMAT(datum_vnosa, '%d.%m.%Y') FROM datumi; |
| DATE_ADD() | Doda določen časovni interval (dni, mesece, leta) k datumu. | DATE_ADD(d, INTERVAL x enota) |
SELECT datum_vnosa, DATE_ADD(datum_vnosa, INTERVAL 1 YEAR) FROM datumi; |
| DATE_SUB() | Odšteje določen časovni interval od datuma. | DATE_SUB(d, INTERVAL x enota) |
SELECT datum_vnosa, DATE_SUB(datum_vnosa, INTERVAL 1 MONTH) FROM datumi; |
| DATEDIFF() | Izračuna število dni med dvema datumoma. | DATEDIFF(d1, d2) |
SELECT DATEDIFF(CURDATE(), datum_vnosa) FROM datumi; |
| DAYNAME() | Vrne ime dneva v tednu za določen datum (npr. Thursday). | DAYNAME(datum) |
SELECT datum_vnosa, DAYNAME(datum_vnosa) FROM datumi; |
| ROUND() | Zaokroži število na določeno število decimalnih mest. | ROUND(število, decimale) |
SELECT ROUND(AVG(placa), 2) FROM zaposleni; |
| CEIL() | Zaokroži število navzgor do najbližjega celega števila. | CEIL(število) |
SELECT CEIL(15.15) FROM prva; |
| FLOOR() | Zaokroži število navzdol do najbližjega celega števila. | FLOOR(število) |
SELECT FLOOR(15.85) FROM prva; |
| ABS() | Vrne absolutno (vedno pozitivno) vrednost števila. | ABS(število) |
SELECT ABS(-250) FROM prva; |
| POWER() | Potencira prvo število na vrednost drugega števila. | POWER(osnova, eksponent) |
SELECT POWER(2, 3) FROM prva; |
| SQRT() | Izračuna kvadratni koren števila. | SQRT(število) |
SELECT SQRT(81) FROM prva; |
| IF() | Vrne eno vrednost, če je pogoj resničen, in drugo, če je neresničen. | IF(pogoj, da, ne) |
SELECT ime, IF(oddelek = 'Uprava', 'Vodja', 'Delavec') FROM zaposleni; |
| IFNULL() | Vrne nadomestno vrednost, če je podatek v stolpcu enak NULL. | IFNULL(stolpec, nadomestilo) |
SELECT ime, IFNULL(vrednost, 0) FROM null_tabela; |
| NULLIF() | Vrne NULL, če sta dve podani vrednosti popolnoma enaki, drugače vrne prvo. | NULLIF(v1, v2) |
SELECT NULLIF(oddelek, 'Trgovina') FROM razvrscanje; |
| COALESCE() | Vrne prvo vrednost iz seznama, ki ni NULL. | COALESCE(v1, v2, ...) |
SELECT COALESCE(vrednost, opomba, 'Ni podatka') FROM null_tabela; |