2016/2017-es tanév

2016/2017-es tanév

Mintafeladat_megoldasa

Autók feladat megoldása

 

SQL PROGRAMOZÁS

SQL = Structured Query Language (struktúrált lekérdező nyelv). A relációs adatbázis-kezelés szabványos nyelve. Deklaratív nyelvek csoportjába tartozik (nem algoritmikus nyelv) nem tartalmaz algoritmus szerkezeteket (elágazás, ciklus stb.), de algoritmikus nyelvekbe beépíthető (beágyazott SQL). Az SQL halmaz orientált a relációs algebrán alapuló nyelv. 

Négy utasításcsoportot foglal magában:

  • Adatdefiníciós utasítások (Data Definition Language – DDL), amelyek objektumok létrehozására, módosítására, törlésére valók.
  • Adatmanipulációs utasítások (Data Manipulation Language – DML), amelyek rekordok felvitelére, módosítására és törlésére alkalmazhatók.
  • Adatkezelő utasítások (Data Query Language – DQL), amelyekkel a letárolt adatokat tudjuk visszakeresni.
  • Adatvezérlő utasítások (Data Control Language – DCL), amelyekkel az adatvédelmi és a tranzakció-kezelő műveletek végrehajthatóak.

Az SQL utasítások kulcsszavakból (SQL names, keywords), azonosítókból, műveleti jelekből, literálokból (számszerű, dátumjellegű, szöveges konstansok) állnak. Minden utasítást pontosvesszővel kell lezárni.

Tulajok tábla megnézése:

SELECT * FROM `tulajok`;

Listáza ki a miskolciak nevét:

SELECT `nev` FROM `tulajok` WHERE `varos` = "Miskolc";

Listáza ki az 1970 - 1980 között született embereket:

SELECT `nev` FROM `tulajok` WHERE `szulido` BETWEEN "1970-01-01" AND "1979-12-31";

Legfiatalabb kiválasztása:

SELECT `nev` FROM `tulajok` ORDER BY `szulido` DESC LIMIT 1;

Teljes nevét a "Béla" nevű felhasználónak:

SELECT `nev` FROM `tulajok` WHERE `nev` LIKE "%Béla";

Rekordok megszámolása:

SELECT COUNT(*) FROM `tulajok`;

Összekapcsolsos lekérdezés:

SELECT tulajok.nev, COUNT(*) FROM `tulajok` INNER JOIN autok ON tulajok.tazon = autok.tazon ORDER BY autok.tazon;

Növeljük meg az autók árát:

UPDATE `autok` SET `ar` = `ar` * 1.2;

Beillesztés a mezőbe:

INSERT INTO `autok`(mező1, mező2, mező3) VALUES(mező1adat, mező2adat, mező3adat); (a mező1 és további az aktuális mező neve, mező1adat az odairandó adat)