SQL-funktiot ovat sisäänrakennettuja ohjelmia, joita käytetään suorittamaan erilaisia toimintoja tietokannassa.
On kaksi tyypit SQL:n funktioista:
- Aggregaattifunktiot
- Skalaarifunktiot
SQL-koontifunktiot
SQL-koontifunktiot käyttää dataryhmää ja palauttaa yksittäisen ulostulon. Niitä käytetään enimmäkseen GROUP BY lauseke tietojen yhteenvetoa varten.
Alla olevassa taulukossa on joitain yleisiä syntaksilla ja kuvauksilla varustettuja Aggregate-funktioita.
| Aggregaattitoiminto | Kuvaus | Syntaksi |
|---|---|---|
| AVG() | Laskee keskiarvon | SELECT AVG(sarakkeen_nimi) FROM taulukon_nimi; |
| LASKEA() | Laskee rivien määrän | VALITSE COUNT(sarakkeen_nimi) taulukon_nimi |
| ENSIMMÄINEN() | Palauttaa järjestetyn arvojoukon ensimmäisen arvon | SELECT FIRST(sarakkeen_nimi) FROM taulukon_nimi; |
| KESTÄÄ() | Palauttaa järjestetyn arvojoukon viimeisen arvon | SELECT LAST(sarakkeen_nimi) FROM taulukon_nimi; |
| MAX() | Hakee enimmäisarvon sarakkeesta | SELECT MAX(sarakkeen_nimi) FROM taulukon_nimi; |
| MIN() | Hakee vähimmäisarvon sarakkeesta | SELECT MIN(sarakkeen_nimi) FROM taulukon_nimi; |
| SUMMA() | Laskee numeerisen sarakkeen arvojen kokonaissumman | SELECT SUM(sarakkeen_nimi) FROM taulukon_nimi; |
SQL-skalaarifunktiot
SQL-skalaarifunktiot ovat sisäänrakennettuja toimintoja, jotka toimivat yhdellä arvolla ja palauttavat yhden arvon.
SQL:n skalaarifunktiot auttavat tehokkaassa tietojenkäsittelyssä ja monimutkaisten laskutoimitusten yksinkertaistamisessa SQL-kyselyissä.
| Skalaarifunktio | Kuvaus | Syntaksi |
|---|---|---|
| UCASE() | Muuntaa merkkijonon isoiksi kirjaimiksi | SELECT UCASE(sarakkeen_nimi) FROM taulukon_nimi; |
| LCASE() | Muuntaa merkkijonon pieniksi kirjaimiksi | SELECT LCASE(sarakkeen_nimi) FROM taulukon_nimi; |
| MID() | Poimii alimerkkijonon merkkijonosta | SELECT MID(sarakkeen_nimi alkupituus) FROM taulukon_nimi; |
| VAIN() | Palauttaa merkkijonon pituuden | SELECT PITKÄ(sarakkeen_nimi) FROM taulukon_nimi; |
| PYÖRISTÄÄ() | Pyöristää luvun tiettyyn desimaalien määrään | SELECT ROUND(sarakkeen_nimi desimaalit) FROM taulukon_nimi; |
| NYT() | Palauttaa nykyisen päivämäärän ja kellonajan | VALITSE NYT(); |
| MUOTO() | Muotoilee arvon määritetyssä muodossa | SELECT FORMAT(sarakkeen_nimi muoto) FROM taulukon_nimi; |
Esimerkkejä SQL-funktioista
Katsotaanpa joitain esimerkkejä SQL-funktioista. Käsittelemme esimerkkejä SQL-koontifunktioista ja skalaarifunktioista.
Suoritamme kyselyt annetulle SQL-taulukolle:
Esimerkkejä koostefunktioista
Katsotaanpa esimerkkejä kustakin SQL:n aggregaattifunktiosta.
AVG()-funktioesimerkki
Opiskelijoiden keskiarvopisteiden laskeminen.
Kysely:
SELECT AVG(MARKS) AS AvgMarks FROM Students;
Lähtö:
| AvgMarks |
| 80 |
COUNT() Funktioesimerkki
Opiskelijoiden kokonaismäärän laskeminen.
Hanki nykyinen päivämäärä javassa
Kysely:
SELECT COUNT (*) AS NumStudents FROM Students;
Lähtö:
| NumStudents |
| 5 |
FIRST()-funktioesimerkki
Ensimmäisen oppilaan merkintöjen hakeminen Opiskelijataulukosta.
Kysely:
SELECT FIRST (MARKS) AS MarksFirst FROM Students;
Lähtö:
| MarksFirst |
| 90 |
KESTÄÄ() Toimintoesimerkki
Haetaan viimeisen opiskelijan pisteet Opiskelijataulukosta.
Kysely:
SELECT LAST (MARKS) AS MarksLast FROM Students;
Lähtö:
| MarksLast |
| 85 |
Esimerkki MAX()-funktiosta
Haetaan opiskelijoiden enimmäispisteitä Opiskelijat-taulukosta.
Kysely:
SELECT MAX (MARKS) AS MaxMarks FROM Students;
Lähtö :
| MaxMarks |
| 95 |
MIN()-funktioesimerkki
null tarkistus javassa
Haetaan opiskelijoiden vähimmäispisteitä Opiskelijat-taulukosta.
Kysely:
SELECT MIN (MARKS) AS MinMarks FROM Students;
Lähtö :
| MinMarks |
| 50 |
SUM()-funktioesimerkki
Haetaan opiskelijoiden kokonaispisteiden summaa Opiskelijat-taulukosta.
Kysely:
SELECT SUM(MARKS) AS TotalMarks FROM Students;Lähtö :
| TotalMarks |
| 400 |
Esimerkkejä skalaarifunktioista
Katsotaanpa joitain esimerkkejä kustakin skalaarifunktiosta SQL:ssä.
UCASE()-funktioesimerkki
Muunnetaan opiskelijoiden nimet taulukosta Opiskelijat isoiksi kirjaimille.
Kysely:
SELECT UCASE (NAME) FROM Students;
Lähtö:
| NIMI |
| KORVAA |
| SURESH |
| HARJOITELLA |
| DHANRAJ |
| RAM |
LCASE()-funktioesimerkki
Muunnetaan opiskelijoiden nimet taulukosta Opiskelijat pieniksi kirjaimille.
Kysely:
Masonin kaava
SELECT LCASE (NAME) FROM Students;
Lähtö:
| NIMI |
| ankara |
| suresh |
| harjoitella |
| dhanraj |
| ram |
MID()-funktioesimerkki
Haetaan opiskelijoiden nimien neljää ensimmäistä merkkiä Opiskelijat-taulukosta.
Kysely:
SELECT MID (NAME14) FROM Students; Lähtö :
| NIMI |
| HARTSI |
| VARMA |
| PRAT |
| KAIKKI |
| RAM |
LEN()-funktioesimerkki
Haetaan opiskelijoiden nimien pituutta Opiskelijat-taulukosta.
Kysely:
SELECT LENGTH (NAME) FROM Students;
Lähtö:
| NIMI |
| 5 |
| 6 |
| 6 |
| 7 |
| 3 |
ROUND() Funktioesimerkki
Haetaan opiskelijoiden enimmäispisteitä Opiskelijat-taulukosta.
Kysely:
SELECT ROUND (MARKS0) FROM Students;
Lähtö :
| MARKS |
| 90 |
| 50 |
| 80 |
| 95 |
| 85 |
NOW() Funktioesimerkki
tekniikan edut ja haitat
Haetaan nykyistä järjestelmäaikaa.
Kysely:
SELECT NAME NOW() AS DateTime FROM Students ;
Lähtö:
| NIMI | DateTime |
| KORVAA | 13.1.2017 13:30:11 |
| SURESH | 13.1.2017 13:30:11 |
| HARJOITELLA | 13.1.2017 13:30:11 |
| DHANRAJ | 13.1.2017 13:30:11 |
| RAM | 13.1.2017 13:30:11 |
FORMAT() Toimintoesimerkki
Muotoillaan nykyinen päivämäärä muotoon VVVV-KK-PP.
Kysely:
SELECT NAME FORMAT (Now()'YYYY-MM-DD') AS Date FROM Students;
Lähtö:
| NIMI | Päivämäärä |
| KORVAA | 13.1.2017 |
| SURESH | 13.1.2017 |
| HARJOITELLA | 13.1.2017 |
| DHANRAJ | 13.1.2017 |
| RAM | 13.1.2017 |
Tärkeitä seikkoja SQL-funktioista
Luo tietokilpailu
- SQL-funktiot ovat sisäänrakennettuja ohjelmia, joita käytetään tietojen käsittelemiseen eri tavoin.
- On olemassa erilaisia SQL-funktioita - Aggregate-funktioita ja skalaarifunktioita.
- Kokoonpanofunktiot suorittavat laskelmia arvoryhmästä ja palauttavat yhden arvon. Esimerkki SUM AVG COUNT.
- Skalaarifunktiot toimivat yhdellä arvolla ja palauttavat yhden arvon. Esimerkki UPPER LOOWER SUBSTRING.
- SQL-funktioita voidaan käyttää erilaisissa SQL-käskyissä, kuten SELECT WHERE GROUP BY ja ORDER BY parantamaan tietojen käsittelyä ja analysointia.