SQL keel. Harjutus. Auto tabeli loomine.

Loo tabeli

CREATE TABLE autode(
Mark VARCHAR(50)
,reg_num VARCHAR (7)
,Aasta int
,Reg_piirk int);
INSERT INTO autode( Mark, reg_num, Aasta, Reg_piirk)
VALUES
('Audi', '123 ABC', 2000, 1)
,('Ford','FIN 772',1988,2)
,('Ford','777 AAA',2002,1)
,('Nissan','111 CCC',2006,1)
,('Toyota','128 HGF',2003,1)
,('VAZ','544 CCH',1960,2)

· Järjesta autod tootmisaasta järgi kahanevasse järjekorda

SELECT * FROM autode ORDER BY Aasta DESC

· Väljasta kõik erinevad margid (kasuta HAVING)

SELECT DISTINCT Mark FROM autode

· Väljasta enne 1993. aastat toodetud autode registrinumbrid

SELECT * FROM autode WHERE Aasta < 1993;

·         Väljasta enne 1993. aastat toodetud autode registrinumbrid tähestiku järjekorras

SELECT * FROM autode WHERE Aasta < 1993 ORDER BY Mark

· Väljasta autode kõige varasem väljalaskeaasta (MIN)

SELECT MIN(Aasta) 'Kõige varasem väljalaskeaasta' FROM autode

· Muuda registrinumbrit autol, mille id on 3 (uus number 333 KKK)

UPDATE autode SET reg_num = '333 KKK' WHERE reg_num = '#45a2e7'

·         Kustuta auto id-ga 4

DELETE FROM autode WHERE reg_num = '#50c8a1'

·         Lisa uus masin nimekirja. Vaata tabeli sisu.

INSERT INTO autode (Mark, reg_num, Aasta,Reg_piirk) VALUES ('Nissan', '555 NNN', 2002, 2)

Antud tabeli põhjal koosta ise veel kolm SELECT päringu ja kommenteeri neid ja näita tulemust (print screen)

“Kuvada brändid, mille nimed algavad tähega L ja mille asutamisaasta on pärast 2000. aastat.

SELECT * FROM autode WHERE reg_num LIKE '%a%' AND Aasta > 2000

Kõige vanem auto, millel on registreerimisnumber 1.

SELECT TOP 1 * FROM autode WHERE Reg_piirk = 1 ORDER BY Aasta

Kuvada ainult need autod, mille valmimisaste on ajavahemikus 2000–2010 ja mille registreerimisnumber on vahemikus 1 kuni 5.

SELECT * FROM autode
WHERE Aasta
BETWEEN 2000 AND 2010
AND Reg_piirk BETWEEN 1 AND 5

Järjesta autod tootmisaasta järgi kahanevasse järjekorda

SELECT * FROM autode ORDER BY Aasta DESC

Väljasta kõik erinevad margid (kasuta DISTINCT)

SELECT DISTINCT Mark FROM autode

Väljasta enne 1993. aastat toodetud autode registrinumbrid

SELECT * FROM autode WHERE Aasta < 1993;

Väljasta enne 1993. aastat toodetud autode registrinumbrid tähestiku järjekorras

SELECT * FROM autode WHERE Aasta < 1993 ORDER BY Mark

Väljasta autode kõige varasem väljalaskeaasta (MIN)

SELECT MIN(Aasta) 'Kõige varasem väljalaskeaasta' FROM autode; 

Muuda registrinumbrit autol, mille id on 3 (uus number 333 KKK)

UPDATE autode SET reg_num = '333 KKK' WHERE Reg_piirk=3; 

Kustuta auto id-ga 4

DELETE FROM autode WHERE reg_num='#63fbbc';

Enne kui koodi sisestasin

Pärast koodi sisestamist kadus auto indikaatoriga 4

Lisa uus masin nimekirja.

Antud tabeli põhjal koosta ise veel kolm SELECT päringu ja kommenteeri neid ja näita tulemust (print screen)

“Kuvada brändid, mille nimed algavad tähega L ja mille asutamisaasta on pärast 2000. aastat.

SELECT * FROM autode WHERE reg_num LIKE '%a%' AND Aasta > 2000

Kõige vanem auto, millel on registreerimisnumber 1.

SELECT * FROM autode WHERE Reg_piirk = 1 ORDER BY Aasta LIMIT 1;

Kuvada ainult need autod, mille valmimisaste on ajavahemikus 2000–2010 ja mille registreerimisnumber on vahemikus 1 kuni 5.

SELECT * FROM autode
WHERE Aasta
BETWEEN 2000 AND 2010
AND Reg_piirk BETWEEN 1 AND 5

——————————————————————————–

Koosta kolm protseduuri, mis sisaldavad vähemalt 1parameeter ja see parameeter sõltub SELECT lause tulemusest.

Kindla aasta autode hankimise kord

BEGIN
    SELECT Mark, reg_num, Aasta, Reg_piirk
    FROM autode
    WHERE Aasta = year1;
END

Tulemus, kui sisestate 2000 :

Pärast määratud aastat toodetud autode vastuvõtmise kord

BEGIN
    SELECT Mark, reg_num, Aasta, Reg_piirk
    FROM autode
    WHERE Aasta > year1;
END

Tulemus, kui sisestate 2000 :

Kuvab kõik konkreetse automargiga autod

BEGIN
    SELECT * 
    FROM autode
    WHERE Mark = mark1;
END

Tulemus, kui sisenete Fordi :