0% au considerat acest document util (0 voturi)
6 vizualizări11 pagini

Codecademy SQL

Acest document rezumă conceptele cheie SQL: 1. Clausele de manipulare, cum ar fi SELECT, INSERT, UPDATE și DELETE, permit recuperarea, adăugarea, modificarea și eliminarea datelor din tabele. 2. Interogările folosesc operatori precum comparație, LIKE, BETWEEN pentru a filtra datele din tabele. Funcțiile agregate precum COUNT, SUM, MAX calculează valori pe grupuri. 3. Tabele multiple pot fi unite pentru a combina datele corelate. Cheile primare identifică unic rândurile, iar cheile externe leagă tabelele prin potrivirea cheilor primare.

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)
6 vizualizări11 pagini

Codecademy SQL

Acest document rezumă conceptele cheie SQL: 1. Clausele de manipulare, cum ar fi SELECT, INSERT, UPDATE și DELETE, permit recuperarea, adăugarea, modificarea și eliminarea datelor din tabele. 2. Interogările folosesc operatori precum comparație, LIKE, BETWEEN pentru a filtra datele din tabele. Funcțiile agregate precum COUNT, SUM, MAX calculează valori pe grupuri. 3. Tabele multiple pot fi unite pentru a combina datele corelate. Cheile primare identifică unic rândurile, iar cheile externe leagă tabelele prin potrivirea cheilor primare.

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

Codecademy SQL

SQL

Codecademy SQL
Manipulare
Tipul de date include:
SELECT dintr-un tabel
Setaț i LIMITA
CREAȚ I TABEL
INSERARE într-un tabel
Adaugă Coln
ACTUALIZEAZĂ Valoare

Întrebare
Operatori de comparaț ie
Operator LIKE
Operatorul BETWEEN
AND and OR Operator
COMANDA

Funcț ii agregate
NUMĂR
GRUPAȚ I DUPĂ

Având
SUMA
MAX ș i MIN ș i Medie
DISTINCT
Caz

Tabele multiple
Chei primare
Selectaț i din tabele multiple
Alăturaț i-vă (Combinaț i)

Utilizaț i AS pentru a redenumi

UNIUNE

Manipulare

Clauzele îndeplinesc sarcini specifice în SQL. După convenț ie, clauzele sunt scrise cu litere mari.
litere. Clauzele pot fi, de asemenea, considerate comenzi.
Tipul de date include:

1N
. umăr întreg: un număr întreg pozitv sau negativ
o string text
3D
. ată: data formatată ca YYYY-MM-DD pentru an, lună ș izi
4. Rea:l o vaolare zecm
i aăl

SELECTdintr-un tabel

* reprezintă tot. de exemplu, selectaț i tot dincontacte.

SELECT*FROMcontacts;/* va apărea în rezultat */


SELECT * FROM celebs; /* va apărea în rezultat */
SELECT DISTINCT gen FROM filme; /* fiecare valoare selectată o singură dată

*/

Afiș aț i coloane cu nume diferite

SELECT year AS"Year", west AS"West"


DINtutorial.us_unităț i_de_cazare

SELECT year ASm_year, west ASwest_bala/* parametru nou */


DEtutorial.us_unităț i_de_locuinț e

SetLIMITĂ
Pentru a economisi spaț iu

Alegeț i*
DINtutorial.us_unităț i_de_locuinț e
LIMIT100

CREAȚI TABEL

Creează o tabelă numită astfel în baza de date.

CREAȚ I TABELA celebs (id INTEGER, nume TEXT, vârstă INTEGER);

INSEREAZĂla o masă
Adăugaț i încă o linie la final.
INSERARE ÎN celebs (id, nume, vârstă) VALORI (2, 'Beyonce Knowles', 3)
3);

INSEREAZĂ ÎN celebs (id, nume, vârstă) VALORI(3,'Jeremy Lin',26);

INSERARE ÎN celebs (id,nume, vârstă) VALORI (4, 'Taylor Swift', 26);

SELECT * FROM celebs;

SELECT numele DIN celebs;/* o privire mai apropiată la nume */

Adaugă Coln

Adăugaț i o coloană care conț ine tipul de valoare TEST

MODIFICĂ TABELUL celebs ADĂUGA COLUMNA twitter_handle TEST;

ACTUALIZAREValue

UNDEindică condiț ia

UPDATEcelebsSETage=22WHERE id=2;
UPDATEcelebsSETtwitter_handle ='@taylorswift13'WHERE id=4;
/* actualizaț i */

Ș TERGE DIN celebs UNDE twitter_handle ESTE NULL;/* ș terge */

Interogare

Operatori de Comparare
Acelaș i lucru ca C++, cu excepț ia faptului că folosim= în SQL în loc de==.
<> funcț ionează la fel ca!= ș i este mai utilizat, aș a că<> este recomandat.

SELECT * FROM filme WHERE imdb_rating > 8;

ÎMI PLACEOperator

Funcț ionează ca o expresie regulată

The_înseamnă că poț i substitui orice caracter (unul) aici fără


ruperea tiparului.

SELECT*FROMfilmeUND numele LIKE'Se_en';

% este un caracter joker care se potriveș te cu zero sau mai multe litere lipsă în model.

SELECT*FROMfilmeUNDENUME LIKE'a%';/* orice ș ir începe cu


h a or A*/
SELECT*FROMmoviesWHERE name LIKE'%man%';/* any string contain
s om (nu este sensibil la majuscule)*/

ÎNTREOperator

Această declaraț ie filtrează setul de rezultate pentru a include doar filme cu nume care încep
cu literele 'A' până la dar fără a include 'J'.

SELECT * FROM filme WHERE numele ÎNTRE 'A' ș i 'J';

SELECT * FROM filme WHERE anul ÎNTRE 1990 ș i 2000;

ŞIș iSAUOperator

SELECT * FROM filme WHERE anul ÎNTRE 1990 Ș I 2000 Ș I gen =


comedie
SELECT * FROM filme WHERE gen = 'comedie' SAU an < 1980;

COMANDĂ
SELECT * FROM filme ORDER BY imdb_rating DESC;
SELECT*FROMfilmeORDINEAZĂimdb_ratingASC;
SELECT * FROM filme ORDER BY imdb_rating ASC LIMIT 3; /* doar afiș ează
primele 3 rânduri */

Funcț ii agregate

COUNT

COUNT()este o funcț ie care ia numele unei coloane ca argument ș i numără


numărul de rânduri în care coloana nu esteNULL.

SELECT COUNT(*) FROM fake_apps;

Exerciț iu: găsiț i numărul de valori non-NA din fiecare coloană.

SELECT COUNT(data) ca dates,


COUNT(year) ca an,
COUNT(lună) as lună,
COUNT(open) as open,
COUNT(high) ca high,
COUNT(low) as low,
COUNT(close) as close,
COUNT(id) ca id
DINtutorial.aapl_preț _historic_acț iune

GRUPARE DUPĂ

SELECT pret, COUNT(*) FROM aplicatii_falsificate GROUP BY pret;

Aici avem nevoie de preț ș i de numărul fiecărui grup de preț .


SELECT pret, COUNT(*) DIN fake_apps UNDE descarcări > 20000 GRUPA
PREȚ

schimbarea medie zilnică a preț ului fiecărui an

SELECT AVG(close-open),year
DINtutorial.aapl_pret_historic_stoc
GRUPARE DUPĂ an
ORDONAT PE AN

Având
Clauza WHERE nu va funcț iona uneori, deoarece nu permite filtrarea pe aggregate.
coloanele—aceasta este zona în care intervine clauza HAVING

SELECT an,
lună
MAX(înălț ime) AS luna_înaltă
DINtutorial.aapl_preț _acț iuni_din_istorie
GRUPARE DUPĂ an, lună
AVÂND MAX(high) >400
ORDONAT DUPĂ an,lună

SUM

SELECT SUM(downloade) DIN aplicaț ii_falsificate;

SELECT categoria, SUM(descărcări) FROM aplicaț ii_falsificate GROUP BY categoria;

Exerciț iu: găseș te preț ul mediu de deschidere


SELECT SUM(open)/COUNT(open) AS avg_open_price
DINtutorial.aapl_preț _acț iuni_historic

MAXș iMINș i medie

SELECT MAX(descărcări) DIN aplicaț ii_falsificate;

SELECT nume, categorie, MAX(descărcări) FROM fake_apps GROUP BY categ


oră;
SELECT MIN(descărcări) DIN aplicaț ii_falsificate;

SELECT AVG(downloads) FROM fake_apps;


SELECT pret, ROUND(AVG(descarcari), 2) DIN aplicatii_falsificate

GRUPAȚ I DUPĂ preț ;/* rotunjit la 2 zecimale */

DISTINCT

SELECT an, COUNT(DISTINCT lună)


DEla tutorial.aapl_preturi_stocuri_historice
GRUPAȚ I DUPĂ an
ORDONARE DUPĂ an

CAZ

SELECTnumele_jucătorului

year,
CAND an='SR' ATUNCI 'da'
ELSENULLEND ASis_a_senior
DE [Link]ători_de_fotbal_din_college

Tabele multiple

Chei principale

O cheie primară serveș te ca un identificator unic pentru fiecare rând sau înregistrare dintr-un tabel dat. Este

util atunci când se combină 2 tabele.

În această coloană nu existăNULL


Fiecare valoare este unică.

CREAȚ I TABELA artiș ti(id INTEGER CHEIE PRIMARĂ, nume TEXT);


Aiciartist_id este o cheie străină.

Selectaț i din mai multe tabele

SELECT [Link], [Link], artiș [Link] FROM albume, artiș ti;

Alăturaț i-vă (Combinaț i)

(INTERIOR) ÎN JOCAREReturnează înregistrările care au valori corespunzătoare în ambele tabele


JOIN (EXTERIOR STÂNGA)Returnaț i toate înregistrările din tabela din stânga ș i pe cele potrivite

înregistrări din tabela din dreapta


JOIN (EXTERIOR) DREPTReturnează toate înregistrările din tabela din dreapta ș i cele corespunzătoare

înregistrări din tabelul din stânga


JOIN COMPLET (EXTERN)Returnaț i toate înregistrările când există o potrivire fie în stânga, fie în dreapta

masă

1Î. NREGISTREAZĂ-TE(INNER JOIN): dacă există o potrivire, adună împreună.

SELECT*DIN
albumeÎMBINĂartiș ti/* începând combinarea */
ONalbums.artist_id = [Link];/* condiț ie de combinare */
SELECT numele_coloanei(s)
DINtable1
INNER JOIN table2 ON table1.column_name = table2.column_name;

SELECT jucătorii.nume_jucător, jucătorii.nume_ș coală, [Link]ț ăF


ROM
jucători_college_fotbal_benn
JOINbenn.echipe_de_fotbal_universitar
ONplayers.school_name = teams.school_name
[Link] ='FBS (Echipele Diviziei I-A)'

2J. OIN STÂNGA( JOIN EXTERN STÂNGA) dacă există o potrivire, adună împreună. Dacă nu există,
încă se adaugă, dar nu se potriveș te. Va returna fiecare rând din tabelul din stânga, iar dacă îmbinarea
condiț ia nu este îndeplinită, valorile NULL sunt folosite pentru a umple coloanele din dreapta
masă.

SELECT*FROM
albumeLEFT JOINartiș ti
ONalbums.artist_id = [Link];
3Î.NDRĂGOSTITE JOIN
4J. OIN EXTERN COMPLET
5. Auto-unire

SELECTA.NumeleClientuluiASClient1, [Link]
ame2, [Link]
DE la Clienț i A, Clienț i B
UNDE [Link] <> [Link]
[Link] = [Link]
ORDONEAZĂ DUPĂ [Link];

Folose ș teASa redenumi


Poate fi confuz atunci când două tabele au o coloană cu acelaș i nume.

SELECT
[Link]'Album',
[Link],
[Link]'Artist'
DIN
albume
ALĂTURĂ-TE artiș tilor

albume.artist_id = artiș [Link]


UNDE
[Link] >1980;

UNIUNE

TheUNIUNEoperatorul este folosit pentru a combina setul de rezultate al două sau mai multeSELECT
declaraț ii.

Fiecare instrucț iune SELECT din UNION trebuie să aibă acelaș i număr de coloane.
Coloanele trebuie să aibă, de asemenea, tipuri de date similare.

Coloanele din fiecare declaraț ie SELECT trebuie să fie ș i în aceeaș i ordine.

TheUNIONEoperatorul selectează doar valori distincte în mod implicit.

SELECT nume_coloană (s) DIN tabel1


UNIUNE
SELECT numele_coloanei (s) DIN tabel2;

Pentru a permite valori duplicate, foloseș teUNION ALL:


SELECT numele_coloanei (s) DIN tabel1
UNIONALL
SELECT nume_coloană(s) DIN tabel2;

sau

corelat pozitiv
necorelat
corelate negativ

corelat pozitiv
(inconcludent)
fără corelaț ie
(neconcludent)
corelat negativ

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