Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
Structured Query Language
SQL Structured Query Language
4
La sintassi
5
ESEMPIO
23
ESEMPIO
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
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
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)
47
>> SQL >> funzioni Sql
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.