SQL keel. Harjutus. Auto tabeli loomine.

1) Autod tabeli loomine

create table autod (
	mark text,
	regnr varchar(20) primary key,
	aasta INT,
	regpiirk int
);

2)Tabeli täitmine

insert into autod(mark, regnr, aasta, regpiirk)
values 
('Audi', '123ABC', 2000, 1), 
('Ford', '777AAA', 1988, 2), 
('Ford', 'FIN772', 2002, 1), 
('Nissan', '111CCC', 2006, 1), 
('Toyota', '128HGF', 2003, 1), 
('VAZ', '544CCH', 1960, 2);

3)Genereeri veel 20  autod mockaroo abil

insert into autod (mark, regnr, aasta, regpiirk) values ('BMW', '#741a7d', 2003, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Renault', '#44a8fd', 200, 2);
insert into autod (mark, regnr, aasta, regpiirk) values ('Lexus', '#6906a5', 2001, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Mercedes', '#2e3d6b', 1995, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Opel', '#8c3d28', 1995, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Audi', '#e07b22', 1945, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Aston Martin', '#949964', 2016, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Buggati', '#d2851a', 2000, 2);
insert into autod (mark, regnr, aasta, regpiirk) values ('Lamborgini', '#9d3776', 2015, 2);
insert into autod (mark, regnr, aasta, regpiirk) values ('Infiniti', '#97be49', 2020, 2);
insert into autod (mark, regnr, aasta, regpiirk) values ('Tesla', '#fbda62', 2001, 2);
insert into autod (mark, regnr, aasta, regpiirk) values ('Maybach', '#e1c3d2', 1991, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Audi', '#13ca7d', 1990, 2);
insert into autod (mark, regnr, aasta, regpiirk) values ('Opel', '#18a85c', 2003, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Bentley', '#e23f36', 2001, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Cadillac', '#2876da', 2010, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Chevrolet', '#03d603', 2006, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Porsche', '#f95fa9', 2013, 1);
insert into autod (mark, regnr, aasta, regpiirk) values ('Dodge', '#526129', 2012, 2);
insert into autod (mark, regnr, aasta, regpiirk) values ('Ferrari', '#56a4e7', 2020, 2);

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

---4)Järjesta autod tootmisaasta järgi kahanevasse järjekorda
select mark, aasta from autod order by aasta desc;

5)Väljasta kõik erinevad margid (kasuta distinct)

---5)Väljasta kõik erinevad margid (kasuta distinct)
select distinct mark from autod

6)Väljasta enne 1993. aastat toodetud autode registrinumbrid

---6)Väljasta enne 1993. aastat toodetud autode registrinumbrid
select mark, aasta
from autod
where aasta>1993

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

---7)Väljasta enne 1993. aastat toodetud autode registrinumbrid tähestiku järjekorras
select aasta,regnr
from autod
where aasta<1993 order by regnr desc

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

---8)Väljasta autode kõige varasem väljalaskeaasta (MIN)
select min(aasta) as 'autode kõige varasem väljalaskeaasta'
from autod

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

UPDATE autod
SET regnr = '333 KKK'
WHERE mark = 'opel'
select * from autod


10)Kustuta auto id-ga 4

---10)Kustuta auto id-ga 4
delete from autod
where mark = 'cadillac'

11)Lisa uus masin nimekirja. Vaata tabeli sisu.

---11)Lisa uus masin nimekirja. Vaata tabeli sisu.
insert into autod (mark, regnr, aasta, regpiirk)
values ('nissan', '228nmn', 2009, 2)

—12)Näita mulle 5 autot, mille tootmisaasta on kõige suurem ja sorteeritud kahanevas järjekorras.

---12)Näita mulle 5 autot, mille tootmisaasta on kõige suurem ja sorteeritud kahanevas järjekorras.
select top 5 mark, aasta
from autod
order by aasta desc

—13) Näitavad M-ga algavaid autosid

---13) Näitavad M-ga algavaid autosid
select * from autod
where mark like 'm%'

—14) Näitavad autod, mille esimene ja viimane täht on sama.

---14) näitavad autod, mille esimene ja viimane täht on sama.
select * from autod
where left(mark, 1)=RIGHT(mark, 1)

————————————————XAMPP—————————————————

1)Tabeli loomine ja täitmine

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

Järjesta autod tootmisaasta järgi kahanevasse järjekorda
select mark, aasta from autod order by aasta desc;

3)Väljasta kõik erinevad margid (kasuta distinct)

Väljasta kõik erinevad margid (kasuta distinct)
select distinct mark from autod

4)Väljasta enne 1993. aastat toodetud autode registrinumbrid

select mark, aasta
from autod
where aasta>1993

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

select aasta,regnr
from autod
where aasta<1993 order by regnr desc

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

select min(aasta) as 'autode kõige varasem väljalaskeaasta'
from autod

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

UPDATE autod
SET regnr = '333 KKK'
WHERE regnr = '#18a85c'

8)Kustuta auto id-ga 4

delete from autod
where mark = 'cadillac'

9) Lisa uus masin nimekirja. Vaata tabeli sisu.

insert into autod (mark, regnr, aasta, regpiirk)
values ('nissan', '228nmn', 2009, 2)

10)Näita mulle 5 autot, mille tootmisaasta on kõige suurem ja sorteeritud kahanevas järjekorras.

SELECT mark, aasta
FROM autod
ORDER BY aasta DESC
LIMIT 5;

11) Näitavad M-ga algavaid autosid

select * from autod
where mark like 'm%'

12) Näitavad autod, mille esimene ja viimane täht on sama.

select * from autod
where left(mark, 1)=RIGHT(mark, 1)

—————————————Protseduuri————————————————-

1)Sõidukite kuvamine tootmisaasta järgi kahanevas järjekorras

create procedure saadaautosidaasta
as
begin
SELECT mark, regnr, aasta FROM autod
ORDER BY aasta DESC;
end;
exec saadaautosidaasta

2)Välja arvatud enne 1993. aastat toodetud autod, mille registreerimisnumbrid ja mark on esitatud tähestikulises järjekorras.

CREATE PROCEDURE regnumbridenne1993
AS
BEGIN
    SELECT regnr,mark
    FROM autod
    WHERE aasta < 1993
    ORDER BY regnr;
END;
exec regnumbridenne1993

3)Muuta sõiduki registreerimisnumber 777AAA-st 123 BTW-ks.

CREATE pROCEDURE registrinumbriajakohastamineidjärgi
AS
BEGIN
    UPDATE autod
    SET regnr = '123 BTW'
    WHERE regnr = '777AAA';
END;
exec registrinumbriajakohastamineidjärgi

Warning: Undefined array key "sfsi_facebook_display" in /data01/virt140713/domeenid/www.martinrossakov24.thkit.ee/htdocs/wp/wp-content/plugins/ultimate-social-media-icons/libs/controllers/sfsiocns_OnPosts.php on line 450