0% au considerat acest document util (0 voturi)
4 vizualizări30 pagini

Prezentare SQL 1

Acest document oferă o prezentare generală a SQL (Limbaj de Interogare Structurat), inclusiv limbajul său de definiție a datelor (DDL) și limbajul de manipulare a datelor (DML). Acesta descrie instrucțiuni SQL comune, cum ar fi CREATE TABLE, ALTER TABLE, DROP TABLE, INSERT, UPDATE, DELETE. De asemenea, acoperă clauze SQL, operatori și funcții agregate. Exemplele sunt furnizate pentru a ilustra modul de utilizare a instrucțiunilor SQL pentru a defini tabele, a insera/actualiza/elimina rânduri, a efectua uniri și a utiliza funcții agregate pentru a rezuma datele.

Tradus de

ScribdTranslations
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
4 vizualizări30 pagini

Prezentare SQL 1

Acest document oferă o prezentare generală a SQL (Limbaj de Interogare Structurat), inclusiv limbajul său de definiție a datelor (DDL) și limbajul de manipulare a datelor (DML). Acesta descrie instrucțiuni SQL comune, cum ar fi CREATE TABLE, ALTER TABLE, DROP TABLE, INSERT, UPDATE, DELETE. De asemenea, acoperă clauze SQL, operatori și funcții agregate. Exemplele sunt furnizate pentru a ilustra modul de utilizare a instrucțiunilor SQL pentru a defini tabele, a insera/actualiza/elimina rânduri, a efectua uniri și a utiliza funcții agregate pentru a rezuma datele.

Tradus de

ScribdTranslations
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd

Capitolul 7:

SQL, Structurat
Limbaj de interogare

Soid Quintero & Ervi Bongso


CS157B
Overview
Introduction
Comenzi DDL
Comenzi DML
Declaraț ii SQL, Operatori, Clauze
Funcț ii agregate
Limbaj de interogare structurat (SQL)

Limbajul standard ANSI pentru definiț ie


ș i manipularea bazelor de date relaț ionale.

Include limbaj de definire a datelor (DDL),


declaraț ii care specifică ș i modifică baza de date
scheme.

Include o limbaj de manipulare a datelor (DML),


declaraț ii care manipulează conț inutul bazei de date.
Câteva fapte despre SQL

Datele SQL sunt sensibile la majuscule, iar comenzile SQL nu sunt.

Prima versiune a fost dezvoltată la IBM de Donald D.


Chamberlin ș i Raymond F. Boyce. [SQL]

Dezvoltat folosind lucrarea Dr. E.F. Codd, „O relaț ională


Model de date pentru bănci de date mari ș i partajate.

Interogarea SQL include referinț e la variabilele tuplu


ș i atribuț iile acelor variabile
SQL: Comenzi DDL
CREAȚI TABEL: utilizat pentru a crea un tabel.

ALTER TABLE: modifică o masă după ce a fost creată.

DROP TABLE: elimină o tabelă dintr-o bază de date.


SQL:CREAȚ I TABELA
Lucruri de care să ț ineț i cont înainte de a crea masa dvs. sunt:
Tipul de date
numele tabelului
ce coloană(e) va compune cheia primară
numele coloanelor
Sintaxa declaraț iei CREATE TABLE:
CREAȚI TABEL <numele tabelului>
( tipul de date field1 (NU NULL),
tip de date field2 (NU NULL)
);
SQL: Tipuri de atribute

Tabelul 7.6 pg.164


SQL: DECLARATIE ALTER TABLE
Pentru a adăuga sau a elimina coloane din tabelele existente.

Sintaxa declaraț iei ALTER TABLE:


ALTER TABLE <numele tabelului>
ADAugmentare tip de dată;

sau
Șterge coloana attr;
SQL:Ș tergeț i tabelul
Are două opț iuni:
CASCADE: Specifică faptul că orice constrângere de cheie străină
încălcările cauzate de ș tergerea tabelului vor
că cauzele rândurilor corespunzătoare ale tabelului aferent să
a fi ș ters.

RESTRICT: blochează ștergerea tabelului oricărui


ar fi create încălcări ale constrângerii cheii externe.

Sintaxa comenzii DROP TABLE:


CĂDEREA TABELULUI <numele tabelului> [RESTRICT|CASCADE];
Exemplu:
CREAȚI TABELA FoodCart
(
data varchar(10) FoodCart
food varchar(20), data aliment profit
profit float
);
Caruț a de Mâncare
MODIFICĂ TABELUL FoodCart (
ADăugați sold înt
date food profit sold
);
FoodCart

MODIFICĂ TABELA FoodCart( data alimentelor vândute


DROP COLUMN profit
);

Șterge tabelul FoodCart;


SQL: Comenzi DML
INSERT: adaugă noi rânduri într-un tabel.

UPDATE: modifică unul sau mai multe atribute.


DELETE: șterge una sau mai multe rânduri dintr-un tabel.
SQL:Instrucț iuneaINSERT
Pentru a insera un rând într-un tabel, este necesar să
aveț i o valoare pentru fiecare atribut ș i ordonare
probleme.
Sintaxa declaraț iei INSERT:
INSERT în <numele tabelului>
VALUES('valoare1', 'valoare2', NULL);
Exemplu:INSEREAZĂ înCăruciorDeMâncare
VALUES(„02/26/08', „pizza', 70 );

Carucior de Mâncare mâncare cu curmale vândut


data vândut
aliment 25/02/08 pizza 350
02/25/08 pizza 350 02/26/08 hotdog 500
02/26/08 hotdog 500 02/26/08 pizza 70
SQL:UPDATEDeclaraț ie
Pentru a actualiza conț inutul tabelului:
Sintaxa declaraț iei UPDATE:
UPDATE<table name>SET<attr> = <value>
UNDE<condiție selecție>;
UPDATE FoodCart SET sold = 349
UNDAtă = „02/25/08‟Ș Imâncare = „pizza‟;
FoodCart

data alimentară data vandut


vânzării mâncare

02/25/08 pizza 350 02/25/08 pizza 349


02/26/08 hotdog 500 02/26/08 hotdog 500
02/26/08 pizza 70 02/26/08 pizza 70
SQL:Declaraț ie DELETE
Pentru a ș terge rânduri din tabel:
Sintaxa comenzii DELETE:
Șterge din <numele tabelului>
UNDE<condiție>;
Șterge din FoodCart
WHEREfood = „hotdog‟;
Carucior de Mâncare

data sold
aliment date food vândut
25/02/08 pizza 349 25/02/08 pizza 349
02/26/08 hotdog 500 02/26/08 pizza 70
02/26/08 pizza 70
Notă: Dacă clauza WHERE este omisă, toate rândurile de date sunt ș terse din tabel.
Declaraț ii SQL, Operaț iuni, Clauze
Declaraț ii SQL:
Selectați
SQL Operations:
Alătură-te
Join Stânga
Îmbinare dreapta

Ca
Clauze SQL:
Ordonează după

Grupare după
Având
SQL:SELECTStatement
O declaraț ie SELECT de bază include 3 clauze

SELECT <nume atribut> DIN <tabele> UNDE <condiție>

SELECT DE LA UNDE
Specifică Specifica Specificaț i
atribute care sunt mese care servesc condiț ie de selecț ie
parte din ca intrare în inclusiv unirea
relaț ia rezultantă declaraț ie condiț ie.

Notă: că nu trebuie să foloseș ti WHERE


SQL:SELECTStatement (cont.)
Folosirea unui „*” într-o declaraț ie SELECT indică faptul că
fiecare atribut al tabelului de intrare trebuie să fie
selectat.
Exemplu: SELECT * DIN…UNDE…;

Pentru a obț ine rânduri unice, scrie cuvântul cheie


DISTINCTdupăSELECT.
EXEMPLU: SELECT DISTINCT * DIN ...
UNDERE …;
Exemplu: 1)SELECT *
Persoană DIN persoană
Name Age Greutate UNDERT age > 30;
Harry 34 80 Name Age Weight
Sally 28 64 Harry 34 80
George 29 70 Helena 54 54
Helena 54 54 Petru 34 80
Petrus 34 80

2)SELECT greutate 3)SELECTdistinctweight


DE la persoană DE la persoană
UNDWHERE vârsta > 30;
UND age > 30;
Weight Weight
80 80
54 54
80
SQL: Operaț iunea de îmbinare

Ajoin poate fi specificat în clauza FROM


care enumeră cele două relaț ii de intrare ș i
Clauza WHERE care listează unirea
condiț ie.
Exemplu:
Emp Departament
ID Stat ID Divizie
1000 CA 1001 IT
1001 MA 1002 Vânzări
1002 TN 1003 Biotehnologie
SQL: Operaț iunea de alăturare (cont.)

inner join =join


SELECT *
DELaîndepart (sau DELaî, departament)
[Link] = [Link];

[Link] [Link] [Link] [Link]


1001 MA 1001 IT
1002 TN 1002 Vânzări
SQL:Operaț iune de unire (cont.)

left outer join =left join


SELECT *
DIN stânga se alătură
[Link] = [Link];

[Link] [Link] [Link] [Link]


1000 CA null null
1001 MA 1001 IT
1002 TN 1002 Vânzări
SQL: Operaț ia de unire (cont.)

right outer join =right join


SELECT *
DINdrept joindep
[Link] = [Link];

[Link] [Link] [Link] [Link]


1001 MA 1001 IT
1002 TN 1002 Vânzări
null null 1003 Biotech
SQL: operaț ia Like
Selectare prin potrivirea modelului

% (ș ir arbitrar)
SELECT *
DE LA emp
UNDEIDlike„%01‟;
găseș te ID-uri care se termină cu 01, de exemplu 1001, 2001, etc

_
SELECT *
DE La
UNDE MIAR PLACE „_01_‟;
găseș te ID-ul care are al doilea ș i al treilea caracter
ca 01, de exemplu 1010, 1011, 1012, 1013, etc
SQL: Clauza ORDER BY
Selecț ia rezultatelor ordonate
desc(ordine descrescătoare)
SELECT *
DE la muncă
ordonați după stare descrescătoare

pune statele în ordine descrescătoare, de exemplu TN, MA, CA


asc (ordine crescătoare)
SELECT *
DE la emp
ordonare după idasc

introduce ID-urile în ordine crescătoare, de exemplu 1001, 1002, 1003


SQL: Clauza GROUP BY
Funcț ia de a împărț i tuplurile în grupuri ș i
returnează un agregat pentru fiecare grup.
De obicei, este un acompaniament al funcț iei agregate.
SELECT food, sum(sold) as totalSold
DE laCaruciorulDeMâncare

grupare după aliment

Carucior de mâncare
datele alimentelor vândute food totalSold
02/25/08 pizza 349 hotdog 500
02/26/08 câine de plajă 500 pizza 419
02/26/08 pizza 70
SQL: Clauza HAVING
Substituirea lui WHERE pentru funcț iile agregate
De obicei, este însoț itorul unei funcț ii agregate
SELECT food, sum(sold) as totalSold
DINCaruciorDeMâncare

grup după mâncare

having_sum(sold) > 450;


Carucior de mâncare

data mâncării vândute food totalSold


02/25/08 pizza 349 hotdog 500
02/26/08 cârnați 500
02/26/08 pizza 70
SQL: Funcț ii de agregare
Sunt folosite pentru a oferi informaț ii de sumarizare pentru
Declaraț ii SQL, care returnează o singură valoare.

COUNT(attr)
SUMA(attr)
MAX(attr)
MIN(attr)
AVG(attr)

Notă: când folosiț i funcț ii de agregare, valorile NULL


nu sunt considerate, cu excepț ia COUNT(*).
SQL: Funcț ii de agregare (cont.)
Carucior de mâncare
data alimentelor vândute

02/25/08 pizza 349


02/26/08 celebă 500
02/26/08 pizza 70
COUNT(attr) -> return # de rânduri care nu sunt nule
Ex:COUNT(distinctfood) fromFoodCart; -> 2

SUM(attr) -> returnează suma valorilor din attr


Ex:SUM(sold) dinFoodCart; -> 919

MAX(attr) -> returnează cea mai mare valoare din attr


Ex:MAX(sold) fromFoodCart; -> 500
SQL: Funcț ii de agregare (cont.)
Tava de mâncare
datele alimentelor vândute

02/25/08 pizza 349


02/26/08 cârnat 500
02/26/08 pizza 70
MIN(attr) -> returnează cea mai mică valoare din attr
Ex:MIN(sold) fromFoodCart; -> 70

AVG(attr) -> returnează valoarea medie din attr


Ex:AVG(sold) fromFoodCart; -> 306.33
Notă: valoarea este rotunjită la precizia tipului de date
Referinț e
Riccardi, Greg. Principles of Database Systems with Internet and Java Applications.
Addison Wesley, 2001.

Ronald R. Plew, Ryan K. Stephens. Învaț ă-te SQL în 24 de ore, ediț ia a 3-a.
Sams Publishing, 2003.

SQL[Link]

W3C[Link]

Wikipedia - SQL[Link]

Wikipedia - alăturați-vă [Link]

S-ar putea să vă placă și