Vogliamo creare una anagrafe e poi creare delle query che

INFORMATICA 4ASA Febbraio 2015 docente Salvatore Mosaico Esempi di SQL
Vogliamo creare una anagrafe e poi creare delle query che rispondono a delle domandi
Utilizzando Microsoft Access
Si crea la tabella Anagrafica degli alunni e si mettono alcuni campi
Si creano via via le query e si memorizzano dando loro un nome
alunni
1
INFORMATICA 4ASA Febbraio 2015 docente Salvatore Mosaico Esempi di SQL
TABELLA ALUNNI
2
INFORMATICA 4ASA Febbraio 2015 docente Salvatore Mosaico Esempi di SQL
Interrogazione di 1 livello (utilizzo in ingresso solo tabelle)
NOME QUERY
DESCRIZIONE
ORDINAMENTO ALUNNI IN ORDINE
ALFABETICO
SQL
SELECT alunni.Cognome, alunni.Nome,
alunni.Datadinascita
FROM alunni
ORDER BY alunni.Cognome, alunni.Nome;
elenco per età
ORDINAMENTO ALUNNI IN ORDINE DAL PIU
GIOVANE (DATAMAGGIORE) AL PIU VECCHIO (
SELECT alunni.Cognome, alunni.Nome,
alunni.Datadinascita
FROM alunni
ORDER BY alunni.Datadinascita DESC;
Totale alunni
CONTEGGIA IL N UMERO RECORD DEGLI
ALUNNI
SELECT Count(IDALUNNO) AS Totale_alunni
FROM alunni;
Totale femmine
CONTEGGIA IL NUMERO DELLE FEMMINE
SELECT Count(IDALUNNO) AS Femmine
FROM alunni
elenco alfabetico
3
INFORMATICA 4ASA Febbraio 2015 docente Salvatore Mosaico Esempi di SQL
WHERE (((alunni.Maschio)=False));
Totale maschi
CONTEGGIA IL NUMERO DEI MASCHI
SELECT Count(IDALUNNO) AS Maschi
FROM alunni
WHERE (((alunni.Maschio)=True));
nominativo
ELENCO NOMINATIVI IN ORDINE ALFABETICO
(NOME E COGNOME MESSI INSIEME)
SELECT alunni.Cognome & ' ' & alunni.Nome AS
nominativo
FROM alunni
ORDER BY alunni.Cognome & ' ' & alunni.Nome;
4
INFORMATICA 4ASA Febbraio 2015 docente Salvatore Mosaico Esempi di SQL
CERCAPERCOGNOME
Cerca alunni con cognome russo
SELECT alunni.Cognome, alunni.Nome,
alunni.Datadinascita
FROM alunni
WHERE (((alunni.Cognome)="RUSSO"));
COGNOMECOMINCIAPER
Cerca alunni il cui cognome comincia con R
SELECT alunni.Cognome, alunni.Nome,
alunni.Datadinascita
FROM alunni
WHERE (((alunni.Cognome) LIKE "R*"));
FINISCEPER
Cerca alunni il cui cognome finisce con I
SELECT alunni.Cognome, alunni.Nome,
alunni.Datadinascita
FROM alunni
WHERE (((alunni.Cognome) LIKE "*I"));
contiene
Cerca alunni il cui cognome contiene la R
SELECT alunni.Cognome, alunni.Nome,
alunni.Datadinascita
FROM alunni
WHERE (((alunni.Cognome) Like "*R*"));
5
INFORMATICA 4ASA Febbraio 2015 docente Salvatore Mosaico Esempi di SQL
ALTEZZAUGUALE
Cerca alunni CON ALTEZZA 1,65
SELECT alunni.Cognome, alunni.Nome,
alunni.Datadinascita, alunni.Altezza
FROM alunni
WHERE (((alunni.Altezza)=1.65));
ALTEZZAMAGGIORE
Cerca alunni CON ALTEZZA MAGGIORE DI 1,65
SELECT alunni.Cognome, alunni.Nome,
alunni.Datadinascita, alunni.Altezza
FROM alunni
WHERE (((alunni.Altezza)>1.65));
ALTEZZACOMPRESA
Cerca alunni CON ALTEZZA COMPRESA TRA
1,65 E 1,75 (COMPRESI)
SELECT alunni.Cognome, alunni.Nome,
alunni.Datadinascita, alunni.Altezza
FROM alunni
WHERE (((alunni.Altezza) Between 1.65 And 1.75));
PRIMI 2 GIOVANI
TROVA I PRIMI 2 ALUNNI PIU GIOVANI
SELECT TOP 2 alunni.Cognome, alunni.Nome,
alunni.Datadinascita
FROM alunni
ORDER BY Datadinascita DESC;
6
INFORMATICA 4ASA Febbraio 2015 docente Salvatore Mosaico Esempi di SQL
QUERY LIVELLO 2 (QUERY CHE UTILIZZANO ALTRE QUERY)
NOME QUERY
Maschi e femmine in alunni
DESCRIZIONE
Estrae numero alunni,numero maschi,numero
femmine
SQL
SELECT [Totale alunni].Totale_alunni, [Totale
femmine].Femmine, [Totale maschi].Maschi
FROM [Totale alunni], [Totale femmine], [Totale
maschi];
NOME QUERY
percentuali maschi e femmine
DESCRIZIONE
Estrae numero alunni,numero maschi,numero
femmine,percentuale femmine,percentuale
maschi
SQL
SELECT [Totale alunni].Totale_alunni, [Totale
femmine].Femmine, [Totale maschi].Maschi,
Femmine/Totale_alunni*100 & '%' AS perfemmine,
Maschi/Totale_alunni*100 & '%' AS permaschi
FROM [Totale alunni], [Totale femmine], [Totale
maschi];
Notare che nelle query i numeri decimali si indicano lo punto 1.75 anche se si visualizzano con 1,17
Inoltre le istruzioni LIKE access utilizza * ma lo standard è %
Nelle string Access utilizza ‘xxx’ o “xxx” indifferendemente ma lo standard SQL è ‘xxxx’
7