SELECT fraas ja funktsioonid SELECT lauses.

SELECT fraas on teine, koos FROMiga kohustuslik igale SELECT pakkumisele. Selle otstarve on tabeli veergude moodustamine – päringu sooritamise lõpptulemus. Tüüpiliselt säilitab ta talle eelnenud fraasidest sisenemisel laekunud ridade arvu ja tegeleb vaid veergude ümbersõnastamisega, kuid mõningatel juhtudel on ta võimeline lisanduma ja ridade arvu vähendama.

Tavaliselt on lause SELECT koostis lõppvastuse veergudele loend läbi väljendite koma. Üksikutel juhtudel võivad sellisel struktuuril eksisteerida oma eripärad.

Lühendatud kirje “kõigi tabeli veergude” jaoks.

Kui tehakse päring ühe andmeallika-tabeli kohta ja tuleb väljastada kõik selle tabeli ridade väljad muutmata kujul, saab SELECT lauses olevate avaldiste loendi asemel märkida sümboli *:

SQL Read ja väljendid

Oletame, et meil on vaja teha lihtsaid numbrilisi operatsioone andmetega, et neid mugavamal kujul esitada. SQL võimaldab skalaarväljendite ja konstantide kandmist valitud väljadesse. Need väljendid võivad täiendada või asendada välju SELECTi lausetes ja võivad sisaldada palju valitud välju. 1. Näiteks võib esitada komisjonimüüjaid intressidena, mitte kümnendnumbritena:

SELECT snum, sname, city, comm * 100 FROM Salespeople;

Viimane veerg antud näites ei oma nime, kuna on arvutatav. Väljavõetavad (väljund) veerud on veerud, mis luuakse päringu abil juhtudel, kui SELECT lauses kasutatakse agregaatfunktsioone, konstante või väljendeid, mitte ei võeta otse tabelist välja. Kuna veergude nimed on tabeli atribuudid, siis veergudel, mis nädalavahetusel tabelist andmeid ei liigu, nimesid ei ole. Peaaegu kõigis olukordades erinevad nädalavahetuse veerud tabelist väljavõetavatest veergudest selle poolest, et neid ei ole nimetatud. Konstante ja ka teksti saab lisada SELECT päringu lausesse. Tähtkonstante ei saa aga erinevalt numbrilistest kasutada väljendites. SELECT-pakkumisse võib lisada 1+2, kuid mitte A+ B, sest A ja B on siin lihtsalt tähed, mitte muutujad või sümbolid, mida kasutatakse millegi neist endist erineva tähistamiseks. Siiski on võimalus sisestada teksti nädalavahetusel päringu andmed täiesti reaalne. 2. Näiteks on võimalik märkida protsentidena väljendatud komisjonimüüjaid “intressi” sümboliga (%), mis võimaldab neid esitada väljundandmetes sümbolite ja kommentaaridena:

SELECT snum, sname, city, '%', comm * 100 FROM Salespeople;

SQL

вырать все поля из таблицы с именем laps

SELECT * from laps
  1. Tingimused

Näidata ainult nimi ja pikkus

select nimi, pikkus from laps;


Näidata ainult lapsed, kelle pikkus on suurem kui 167

select nimi, pikkus
from laps
WHERE pikkus >=167;

Sorteerimine

select nimi, pikkus
from laps
WHERE pikkus >=150
ORDER By pikkus DESC;

Näitame kõik nimed mis algavad ” M “

select nimi
FROM laps
WHERE nimi like 'M%';

Näitame kõik nimed mis sisaldavad ” i

select nimi
FROM laps
WHERE nimi like '%i%';

—vahemik — промежуток — between
—leiame lapsed vanuses (5;15 )

select nimi, vanus
from laps
WHERE vanus between 5 and 15;

COUNT() — количество заполненных ячеек

—ilma between

select nimi, vanus
from laps
WHERE vanus >= 5 and vanus <= 15;

—leia keskmine pikkus

SELECT AVG(pikkus) AS keskmine_pikkus
FROM laps;

—leia suurmane vanus

SELECT SUM(vanus) AS summarne_vanus
FROM laps;

–leia suurem pikkus ja väiksem pikkus

SELECT min(pikkus) AS minPikkus,
max(pikkus) as MaxPikkus
FROM laps;

–otsida laste arv, kellel synniLinn on Tallinn

SELECT count(*) as lasteArv
FROM laps 
WHERE synniLinn like 'Tallinn';

–otsida suurima vanuse tabelist lapsenimi

Select nimi,vanus
From laps
order by vanus DESC;

–select laused kahe tabeli põhjal

SELECT * FROM laps, loom
WHERE laps.lapsID=loom.lapsID;

–INNER JOIN – внутреннее соединение

SELECT * FROM laps INNER JOIN loom
ON laps.lapsID=loom.lapsID;

— ainult vajalikud veerud

SELECT loom.loomaNimi, laps.nimi 
FROM laps INNER JOIN loom
ON laps.lapsID=loom.lapsID;

— kasutame pseudonüümid

SELECT lo.loomaNimi, l.nimi 
FROM laps l INNER JOIN loom lo
ON l.lapsID=lo.lapsID;

— tahaks teada kasside omanikud(lapse nimi)

SELECT lo.loomaNimi, l.nimi
FROM laps l INNER JOIN loom lo  
ON l.lapsID=lo.lapsID
WHERE lo.loomanimi like '%kass%';

XAMPP

LAPS

CREATE TABLE laps(
lapsID int Primary Key AUTO_INCREMENT,
nimi varchar(50),
vanus int,
silmadeVarv varchar(20),
pikkus int,
synniLinn varchar(25));
SELECT * FROM laps;
INSERT INTO laps(nimi,vanus,silmadeVarv,pikkus,synniLinn)
VALUES('Bob',16,'hall',182,'Narva'),
('Mati',17,'hall',174,'Tallinn'),
('Dasha',15,'pruun',164,'Narva'),
('Lixy',13,'roheline',143,'Tallinn'),
('Juki',19,'sinine',190,'Paldiski');

LOOM

CREATE TABLE loom(
loomID int PRIMARY KEY AUTO_INCREMENT,
loomaNimi varchar(25),
lapsID int,
Foreign Key (lapsID) references laps(lapsID));
SELECT * from loom;
SELECT * from laps;
INSERT INTO loom (loomaNimi, lapsID)
VALUES ('kass Chucha',1),
('koer Roxy',2),
('kass Kami',3),
('kass Nana',4),
('kass Tito',4);

Comments

Lisa kommentaar

Sinu e-postiaadressi ei avaldata. Nõutavad väljad on tähistatud *-ga