- asetetaan sakila tietokanta aktiiviseksi
use sakila;
- mitä tauluja tietokannassa on?
show tables;
- millainen on actor taulun rakenne?
describe actor;
- lisätään tietue actor tauluun
insert into actor(first_name,last_name)
values('Teppo','Testi');
- näytetään actor-taulusta sukunimet
select last_name
from actor;
- sama kuin edellä mutta kukin sukunimi vain kerran
select distinct last_name
from actor;
- näytetään kaikki kentät actor-taulusta
select * from actor;
- järjestettynä last_updaten perusteella
select * from actor order by last_update;
- päivastainen järjestys
select * from actor order by last_update desc;
- päiväys suomalaisella tavalla
select first_name, last_name, DATE_FORMAT(last_update,"%d.%m.%Y %H:%i:%s")
from actor;
- muokataan otsikot
select first_name as 'etunimi', last_name as 'sukunimi',
DATE_FORMAT(last_update,"%d.%m.%Y %H:%i:%s") as 'muokattu'
from actor;
- näytetään 5 ensimmäistä riviä actor taulusta
select * from actor limit 5;
- näytetään rivit 6-10 actor taulusta
select * from actor limit 5,5;
- näytetään kaikki joiden etunimi on Christian
select * from actor where first_name='Christian';
- näytetään kaikki joiden etunimi on Christian tai Helen
select * from actor
where first_name='Christian' or first_name='Helen';
tai IN lauseella
select * from actor
where first_name in ('Christian','Helen');
- näytetään ne joiden actor_id suurempi kuin 50
select * from actor where actor_id > 50;
- ne joiden actor_id välillä 50-60
select * from actor where actor_id >= 50 and actor_id <= 60;
sama between lauseella
select * from actor where actor_id between 50 and 60;
- ne joiden etunimi alkaa kirjaimella J
select * from actor where first_name like 'J%';
- ne joiden etunimi alkaa kirjaimilla JA
select first_name from actor where first_name like 'JA%';
- ne joiden nimessä on A -kirjain
select first_name from actor where first_name like '%A%';
- ne joiden nimen toinen kirjain on A
select first_name from actor where first_name like '_A%';
- näytetään etunimen 3 ensimmäistä merkkiä
select substring(first_name,1,3), first_name from actor;
- tulostetaan etunimi ja sukunimi samaan kenttään
select concat(first_name,' ', last_name) as 'name' from actor;
- tulostetaan nimikirjaimet
select concat(substring(first_name,1,1),'.', substring(last_name,1,1)) as 'nimikirjaimet'
from actor;
- tulostetaan kokonimi ja nimikirjaimet
select concat(first_name,' ', last_name) as 'nimi',
concat(substring(first_name,1,1),'.', substring(last_name,1,1))
as 'nimikirjaimet'
from actor;
- montako tietuetta actor taulussa on
select count(actor_id) from actor;
- montako J-kirjaimella alkavaa etunimeä
select count(actor_id) from actor where first_name like 'J%';
- tulostetaan etunimi ja sen frekvenssi
select first_name,count(first_name)
from actor
group by first_name;
- tulostetaan etunimi ja sen frekvenssi järjestettynä frekvenssin mukaan laskevaan järjestykseen
select first_name,count(first_name) as 'frekv'
from actor
group by first_name
order by frekv desc;
- kuten edellä mutta näytetään vain ne joita vähintään 3
select first_name,count(first_name) as 'frekv'
from actor
group by first_name
having frekv >= 3
order by frekv desc;
select last_name,group_concat(first_name) as 'firstnames'
from actor
group by last_name;
- tulostetaan film taulun rakenne
describe film;
- filmin pituuden keskiarvo
select avg(length) from film;
- sama yhden desimaalin tarkkuudella
select round(avg(length) ,1) from film;
- filmin pituuden minimi, maksimi ja keskiarvo
select min(length), max(length), round(avg(length) ,1) from film;