SQL
SQL KOULUTUSTA VUONNA 2025!
-
SQL koulutus
-
MySQL koulutus
-
Microsoft SQL Server ylläpto koulutus
-
Microsoft SQL Server - kyselyjen optimointi ja tuning koulutus
-
Microsoft Access koulutus
Kurssit saatavilla kautta Suomen. Tule ja varaa oma koulutustapahtumasi heti! Koulutuksen järjestää asiantuntijasi Koulutus- ja konsultointipalvelu KK Mediat.
Johdatus SQL-kieleen
Mitä SQL on
SQL (Structured Query Language) on standardoitu kyselykieli, jota käytetään relaatiotietokantojen hallintaan ja käsittelyyn. Sen avulla voidaan mm. lisätä, hakea, muokata ja poistaa tietoja tehokkaasti.
SQL ei ole varsinaisesti ohjelmointikieli, vaan niin sanottu deklaratiivinen kyselykieli. Se kuvaa, mitä halutaan tehdä, mutta ei sitä, miten toiminto suoritetaan teknisesti. Toisin kuin imperatiivisissa ohjelmointikielissä, käyttäjä ei ohjaa kyselyn suoritusta. Sen sijaan tietokannan optimointikoneisto päättää suorituksesta – usein hyvin tehokkaasti.
SQL ei ole muoti-ilmiö. Sen juuret ulottuvat 1970-luvulle, jolloin IBM:n tutkimus irrotti tietojen säilytyksen loogisesta esittämisestä. Tämä mahdollisti uudenlaisen, tehokkaamman tavan järjestellä tietoa, ja sen päälle kehitettiin myöhemmin SQL. SQL:n standardointi alkoi 1980-luvulla, ja siitä lähtien SQL on ollut tietokantojen de facto kyselykieli.
SQL:n osaaminen on kriittinen taito niin ohjelmistokehittäjille, data-analyytikoille, markkinoijalle kuin järjestelmäasiantuntijoillekin. SQL on nykyään läsnä kaikkialla, ja sen osaaminen on hyödyllistä useimmissa työtehtävissä. Esimerkiksi lähes kaikki data- ja analytiikkatyökalut, verkkokaupat ja julkaisujärjestelmät tukevat SQL:n käyttöä.
Miten kirjoitan ja testaan SQL-kyselyn?
SQL-kysely laaditaan yleensä tietokannan omassa hallintatyökalussa tai erillisessä SQL-editorissa.
Kyselyn laatiminen alkaa tarpeen määrittelystä: mitä tietoa haetaan, mistä taulusta se haetaan ja millä ehdoilla? Esimerkiksi, jos haluat listata kaikkien HR-osaston työntekijöiden nimet, kysely voisi näyttää tältä:
SELECT nimi FROM tyontekijat WHERE osasto = 'HR';
Kun kysely on kirjoitettu, se suoritetaan testitietokannassa. Tällöin tulosjoukkoa tulisi tarkastella: palauttaako kysely oikean määrän rivejä, sisältävätkö sarakkeet oikeat arvot ja muut jne. Tarvittaessa kyselyä muokataan tai optimoidaan – esimerkiksi lisäämällä ehtoja, rajaamalla kyselyä tai määrittämällä lajittelujärjestys.
Useimmilla tietokannoilla on omat graafiset työkalunsa SQL:n kirjoittamiseen. Esimerkiksi PostgreSQL käyttää pgAdmin-työkalua, Microsoftin SQL Server käyttää SQL Server Management Studiota (SSMS), ja MySQL:lle on tarjolla MySQL Workbench. Nämä kehitysympäristöt tarjoavat hyödyllisiä lisäominaisuuksia, kuten syntaksin tarkistuksen ja automaattisen täydennyksen.
SQL standardi ja dialektit
SQL-kielestä on olemassa sekä standardisoitu muoto, ANSI-SQL, että tietokantakohtaisia murteita eli dialekteja. Eroa näiden välillä voi verrata Suomen kirjakieleen ja murteisiin - jokainen ymmärtää kirjakieltä, mutta murteet ovat käytössä yleisempiä. Dialektien erot liittyvät syntaksin ja nimeämisen kaltaisiin yksityiskohtiin. Esimerkiksi Microsoft SQL Serverissä nykyinen aika haetaan seuraavalla SQL-kyselyllä:
SELECT GETDATE();
Microsoft Accessissa vastaava kysely kirjoitetaan hieman eri tavalla:
SELECT Now();
Vaikka eri tietokantamoottoreilla on omat laajennuksensa, SQL itsessään on standardisoitu kieli. Tämä mahdollistaa osaamisen siirtämisen järjestelmästä toiseen ilman, että täytyy opetella täysin uusi kyselylogiikka.
Tärkeimmät SQL-dialektit ovat:
- T-SQL on Microsoft SQL Serverin laajennus, joka tukee mm. muuttujia ja proseduurikutsuja.
- Jet-SQL on Microsoft Accessin käyttämä laajennus.
- PL/pgSQL on PostgreSQL:n oma laajennettu SQL-versio.
- SQL*Plus ja PL/SQL ovat Oraclen proseduraalisia laajennuksia.
- MySQL on MySQL:n ja MariaDB:n käyttämä laajennettua SQL-versio, joka poikkeaa osittain standardista.
- SQLite on yksinkertaistettu, kevyt SQL-versio embedded-ympäristöihin.
- BigQuery SQL on Google Cloudin pilvipohjainen SQL-dialekti BigQuery-tietokannoille. Se on optimoitu suurten tietomäärien reaaliaikaiseen analysointiin.
Tunnetuimmat SQL:ää tukevat tietokantajärjestelmät
Tunnetuimpia SQL-tietokantoja ovat PostgreSQL, MySQL (ja siitä irtaantunut MariaDB), Microsoft SQL Server, Oracle Database, SQLite ja Microsoft Access. Jokaisella tietokannalla on omat erityispiirteensä, jotka vaikuttavat myös SQL:n käyttöön:
- PostgreSQL tunnetaan kehittyneisyydestään ja avoimuudestaan.
- MySQL on suosittu web-kehityksessä ja käytetään erityisesti PHP:n ja WordPressin kanssa.
- Microsoft SQL Server tarjoaa laajan tuen Microsoftin ekosysteemille.
- SQLite on kevyt ja helposti integroitava, käytetty erityisesti mobiilisovelluksissa ja embedded-järjestelmissä.
- Microsoft Access on pk-yrityksiin ja kotikäyttöön suunnattu "työpöytä-tietokanta".
- Google BigQuery on pilvipohjainen, erittäin skaalautuva tietovarastopalvelu, joka on suunniteltu suurten tietomäärien analysointiin.