La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Structured Query Language

Presentazioni simili


Presentazione sul tema: "Structured Query Language"— Transcript della presentazione:

1 Structured Query Language
SQL Structured Query Language

2

3

4 La sintassi

5 ESEMPIO

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23 ESEMPIO

24

25 ESEMPIO: Having applicabile su raggruppamenti
SELECT Studenti.Cognome FROM Studenti GROUP BY Studenti.Cognome HAVING Studenti.Cognome>’m' ESEMPIO: Having applicabile su raggruppamenti

26 ESEMPIO: campo calcolato (MS Access function)
SELECT Studenti.Cognome, Mid(Date(),7,4)-Mid([Nato],7,4) AS età FROM Studenti; ESEMPIO: campo calcolato (MS Access function)

27 ESEMPIO: Query parametrica
SELECT Studenti.Cognome, Mid([Nato],9,2) AS anno FROM Studenti WHERE Not Mid([Nato],9,2)=[Quale anno escludere ?] ESEMPIO: Query parametrica

28

29 SELECT [DISTINCT] <Campo1> [AS “Alias1”], <Campo2> [AS “Alias2”], … <CampoN> [AS “AliasN”] FROM <Tabella1>, <Tabella2>, …<TabellaN> WHERE <condizioni> SINTASSI

30 ESEMPIO: estrazione da più tabelle
SELECT Studenti.Cognome, Studenti.Nato, Classi.Corso, Classi.Anno FROM Studenti, Classi, Appartiene WHERE Classi.IdClasse = Appartiene.IdCla AND Studenti.IdStudente = Appartiene.IdStud; ESEMPIO: estrazione da più tabelle

31 ESEMPIO: estrazione da più tabelle con ordinamento
SELECT Studenti.Cognome, Studenti.Nato, Classi.Corso, Classi.Anno FROM Studenti, Classi, Appartiene WHERE Classi.IdClasse = Appartiene.IdCla AND Studenti.IdStudente = Appartiene.IdStud ORDER BY Studenti.Cognome; ESEMPIO: estrazione da più tabelle con ordinamento

32 SELECT [DISTINCT] <Campo1> [AS “Alias1”], <Campo2> [AS “Alias2”], … <CampoN> [AS “AliasN”] FROM <Tabella1>, <Tabella2>, …<TabellaN> WHERE <condizioni> GROUP BY <Campi> HAVING <condizioni> ORDER BY <Campi> SINTASSI

33 VERIFICA Supponiamo di avere la seguente base di dati che contenga le seguenti tabelle (in corsivo sono evidenziate le FK): STUDENTE(Matricola, Nome, Cognome, Indirizzo, Città, CAP,M/F) INSEGNANTE(Matricola, Nome, Cognome, Città, Telefono, Stipendio) CORSO(Codice, Nome, Facoltà, NumeroCrediti) ESAME(CodiceCorso, MatricolaStudente, Voto) INSEGNAMENTO(CodiceCorso, MatricolaProfessore, NumeroStudenti)

34 QUERY Popolare le tabelle e realizzare le seguenti query:
Q1: Elencare il nome e il cognome degli studenti che vivono a Milano o a Verona Q2: Elencare il nome e il cognome degli insegnanti che vivono a Milano o a Verona e guadagnano più di 2000 euro Q3: Elencare il nome e il cognome degli insegnanti che vivono a Milano o a Verona e guadagnano tra i 1000 e i 2000 euro Q4: Trovare i professori che guadagnano più di 1500 euro QUERY

35

36

37

38

39

40

41

42

43 VIEW rappresentata da una query (SELECT), il cui risultato può essere usato come se fosse una tabella archiviata permanentemente modo di vedere i dati da parte dell’utente >>

44 VIEW È una relazione (tabella) derivata Si specifica l’espressione
che genera dinamicamente il suo contenuto. Il contenuto dipende dalle relazioni (tabelle) che compaiono nell’espressione. Le viste possono essere aggiornabili, cioè è possibile eseguire su di esse comandi DML (INSERT, UPDATE e DELETE)

45

46

47 >> SQL >> funzioni Sql


Scaricare ppt "Structured Query Language"

Presentazioni simili


Annunci Google