Schema relazionale
- STUDENTE(Matricola, Cognome, Nome, Data di nascita, Indirizzo, Cap, Città, Telefono, …)
- DIPLOMATO(Matricola, Sezione, Indirizzo di studio, Voto, Anno, Data ritiro, Pagato, …)
Query
- Creare la tabella ANAGRAFE
1234567891011CREATE TABLE STUDENTE(Matricola char(5),Cognome char(20),Nome char(15),[DATA di nascita] date,Indirizzo char(30),Cap char(5),Città char(20),Telefono char(11)) - Creare la tabella DIPLOMATO
12345678CREATE TABLE DIPLOMATO(Matricola char(5),Sezione char(1),[Indirizzo di studio] char(1),Voto integer,Anno integer) - Modificare il codice relativo al sesso del record con codice 10100
123UPDATE STUDENTESET Sesso = 'M'WHERE Matricola = "10100" - Eliminare il record con codice 10100
123DELETE *FROM STUDENTEWHERE MATRICOLA = "10100" - Eliminare la tabella STUDENTE
1DROP TABLE STUDENTE - Aggiungere il campo Sesso alla tabella STUDENTE
1ALTER TABLE STUDENTE ADD Sesso char(1) - Eliminare il campo Sesso dalla tabella STUDENTE
1ALTER TABLE STUDENTE DROP Sesso - Inserire un nuovo studente
12INSERT INTO STUDENTE VALUES("10100", "De Nuccio", "Michele", "22/02/78", "Largo Beethoven, 1", "21013", "Gallarate", "0331/551412", "F") - Creazione di TABTEMP
123SELECT Cognome, Voto INTO TABTEMPFROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.MatricolaORDER BY Voto DESC - Accodamento in TABTEMP
1234INSERT INTO TABTEMPSELECT Cognome, VotoFROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.MatricolaORDER BY Voto DESC - Matricole e voti
12SELECT Matricola, VotoFROM DIPLOMATO - Cognomi e voti
12SELECT Cognome, VotoFROM STUDENTE, DIPLOMATO - o meglio
1234SELECT Cognome, VotoFROM STUDENTE, DIPLOMATOWHERE STUDENTE.Matricola = DIPLOMATO.Matricola - o meglio
12SELECT Cognome, VotoFROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.Matricola - Cognomi e voti, dei diplomati con voto compreso tra 70 e 80
123SELECT Cognome, VotoFROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.MatricolaWHERE Voto BETWEEN 70 AND 80 - Cognomi e voti, dei diplomati di Milano o Legnano
123SELECT Cognome, VotoFROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.MatricolaWHERE Città IN ("Milano", "Legnano") - Cognomi e voti, dei diplomati il cui cognome comincia con la lettera A
123SELECT Cognome, VotoFROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.MatricolaWHERE Cognome LIKE "A*" - Cognomi e voti, dei diplomati che abitano in una città con la I come seconda lettera
123SELECT Cognome, VotoFROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.MatricolaWHERE Città LIKE "?I*" - Cognomi e voti ordinati rispetto al voto
123SELECT Cognome, VotoFROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.MatricolaORDER BY Voto DESC - Tabella DIPLOMATI
12SELECT *FROM DIPLOMATI - Tutto sui diplomati…
12SELECT *FROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.Matricola - Tutto su tutti…
12SELECT *FROM STUDENTE LEFT JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.Matricola - La media dei voti
12SELECT Avg(Voto)FROM DIPLOMATO - La media dei voti per città
123SELECT Città, Avg(Voto)FROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.MatricolaGROUP BY Città -
La media dei voti per città, con almeno 80 di media
1234SELECT Città, Avg(Voto)FROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.MatricolaGROUP BY CittàHAVING Avg(Voto) >= 80 - La classifica della media dei voti per città
1234SELECT Città, AVG(Voto)FROM STUDENTE INNER JOIN DIPLOMATO ON STUDENTE.Matricola = DIPLOMATO.MatricolaGROUP BY CittàORDER BY Avg(Voto) DESC