SELECT užklausa yra skirta užklausti duomenų bazės ir gauti pasirinktus duomenis, kurie atitinka iškeltus reikalavimus. Užklausos formatas yra:
SELECT " stulpelis1" [,"stulpelis2", t.t.] FROM "lenetlėsvardas" [WHERE "sąlygos"];
[] - nurodo, kad pasirenkamas
Stulpelio vardai, kurie nurodyti po SELECT, apibrėžia kurių stulpelių duomenys turi būti rezultate. Galime pasirinkti tiek stulpelių kiek tik pageidaujame ir netgi jei mus domina visi stulpeliai, tai su „*“ galima užsakyti visus.
Lentelės vardas nurodomas po raktinio žodžio FROM, kas reiškia, kad duomenys bus formuojami iš tos lentelės.
Raktinis žodis WHERE nėra būtinas, bet jis nurodo sąlygas, kurias turi atitikti eilutės pagal stulpeli. Sąlygos po WHERE gali būti:
= lygu
> daugiau negu
< mažiau negu
>= daugiau negu arba lygu
<= mažiau negu arba lygu
<> nelygu
LIKE šablono operatorius, kuris nurodo simbolinės eilutės panašumo savybes. Šis operatorius reiškia, kad tekstas turi būti panašus į nurodytą. Procentas % nurodo, kad gali būti bet kokie simboliai, o tuo tarpu kiti simboliai yra privalomi analizuojame duomenyje.
Lentelė darbuotojai.
vardas |
pavarde |
nr |
amzius |
miestas |
apskritis |
Vardis | Pavardis | 99980 | 45 | Vilnius | Vilniaus |
Jonas | Jonaitis | 99981 | 34 | Kaunas | Kauno |
Petras | Petraitis | 99982 | 65 | Šiauliai | Šiaulių |
Vytautas | Didysis | 99983 | 33 | Trakai | Vilniaus |
Birutė | Jonienė | 99984 | 23 | Mažeikiai | Telšių |
Ona | Petraitė | 99984 | 27 | Palanga | Klaipėdos |
SELECT vardas, pavarde, miestas
FROM darbuotojai
WHERE pavarde LIKE ‘Jon%’;
Rezultatas
vardas |
pavarde |
miestas |
Jonas | Jonaitis | Kaunas |
Birutė | Jonienė | Mažeikiai |
Įveskite kitus pavyzdines SELECT užklausas, kurios pateiktos žemiau. Palyginkite ką jos duoda, kuo jos skiriasi.
select vardas, pavarde, miestas from darbuotojai;
select vardas, pavarde, miestas from darbuotojai
where amzius > 30;
select vardas, pavarde, miestas from darbuotojai
where vardas LIKE ‘J%’;
select * from darbuotojai;
select vardas, pavarde from darbuotojai
where pavarde LIKE ‘%s’;
select vardas, pavarde, amzius from darbuotojai
where pavarde LIKE ‘%ait%’;
select * from darbuotojai where vardas = ‘Ona’;
SELECT užklausos uždaviniai:
1. Pateikti visų lentelėje esančiųjų tik vardą ir amžių.
2. Pateikti visų vardus, pavardes ir miestus, kurie yra iš Vilniaus apskrities.
3. Pateikti visą informaciją apie tuos, kurie vyresni nei 30 metų.
4. Gauti vardus ir pavardes tų, kurių pavardė baigiasi galūne „is“.
5. Gauti visą informaciją, kurių pavardė turi junginį „on“.