sql sakiniai

15

Upload: shanae

Post on 05-Jan-2016

48 views

Category:

Documents


0 download

DESCRIPTION

SQL sakiniai. Lentelių jungimas (2). Lentelės sujungimas su savimi. Kategorijos_ID Pavadinimas Parent_ID. SELECT lentele .Pavadinimas AS `vaikas`, parent.Pavadinimas AS `tevas` FROM `lentele` LEFT JOIN `lentele` AS `parent` ON lentele.parent_ID = parent.kategorijos_ID. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: SQL sakiniai
Page 2: SQL sakiniai
Page 3: SQL sakiniai

Kategorijos_IDPavadinimasParent_ID

SELECT lentele.Pavadinimas AS `vaikas`, parent.Pavadinimas AS `tevas`FROM `lentele` LEFT JOIN `lentele` AS `parent` ON lentele.parent_ID = parent.kategorijos_ID

Page 4: SQL sakiniai

Analogiškas LEFT JOIN, tik dėmesys šiuo atveju skiriamas dešiniajai lentelei

`lentle A` LEFT JOIN `lentle B`=`lentle B` RIGHT JOIN `lentle A`

Page 5: SQL sakiniai

Veikia tarsi ir LEFT ir RIGHT JOIN kartu – lentelėje atsiranda visi įrašai tiek iš vienos, tiek iš kitos lentelės.

Page 6: SQL sakiniai
Page 7: SQL sakiniai

Darbuotojai Klientai

Asmens_kodasVardasPavardeTelefonas...

Asmens_kodasVardasPavardeTelefonas...

Page 8: SQL sakiniai

Bendras klientų ir darbuotojų vakarėlis, reikia sąrašo su telefonais.

SELECT * FROM `darbuotojai`UNIONSELECT * FROM `klientai`

Page 9: SQL sakiniai

Nuo UNION skiriasi tuo, kad jei įrašas kartojasi tiek vienoje, tiek kitoje lentelėje, isspausdins juos abu (pvz. asmuo – tiek darbuotojas, tiek klientas)

SELECT * FROM `darbuotojai`UNION ALLSELECT * FROM `klientai`

Page 10: SQL sakiniai
Page 11: SQL sakiniai

SELECT * FROM `orders`

| WHERE day_of_order =(SELECT MAX(day_of_order)

FROM orders)

Page 12: SQL sakiniai

Klientai Pašto kodai

ID Vardas Pavardė Pašto kodas

Pašto kodas Miestas/rajonas

Užduotis: Atrinkti visus klientus, kurių pašto kodai – Kauno mieste

SELECT * FROM `klientai` WHERE `Pasto_kodas` IN (SELECT `Pasto_kodas` FROM `pasto_kodai` WHERE `Miestas` = 'Kaunas' )

Page 13: SQL sakiniai

Atrinkti numerius užsakymų, kuriuose yra modeliukų iš ‘Ships’ serijos

SELECT DISTINCT `orderNumber` FROM `orderdetails` WHERE `productCode` IN (SELECT `productCode` FROM `products` WHERE `productLine`=‘Ships’)

Page 14: SQL sakiniai
Page 15: SQL sakiniai

[email protected] [email protected]

Parsisiųskite pavyzdinę duomenų bazę:◦ tiny.lt/sql1

Importuoti DB į savo MySQL serverį

Suformuoti užklausas duomenų išgavimui ‘classicmodels’ DB

Užklausas surašyti MS Word faile

Apmokėjimai, gauti paskutiniais duomenų bazėje saugomais metais

Darbuotojai, dirbantys biuruose esančiuose ‘USA’