Abilità Informatiche A.A. 2010/2011
Lezione 9: Query Maschere Report
Facoltà di Lingue e Letterature Straniere
Le QUERY
2
Che cos’è una Query?
Una Query rappresenta uno strumento per “interrogare” un
database.
Permette di recuperare specifiche informazioni tra i tanti dati
archiviati nel database e raccolti in tabelle correlate,
effettuando ricerche incrociate sui record che rispondono a
determinate caratteristiche e filtrando così i dati che
interessano, provenienti anche da tabelle diverse.
Esempio: in un database che gestisce i libri di una biblioteca,
tramite una Query posso chiedere di individuare tutti i libri
scritti da un certo autore.
SQL (Structured Query Language) è il linguaggio standard per
creare una Query, nonché per interrogare il database.
3
Query di Selezione
La Query di Selezione permette di selezionare ed estrapolare all’interno del database i
dati contenuti in determinati campi di una tabella che rispondono a determinate
condizioni di ricerca.
La sintassi per la formulazione della domanda è:
SELECT nomi_campi FROM nome_tabella WHERE condizioni ricerca.
Esempio: vogliamo conoscere il saldo residuo relativo ad un determinato numero di conto
corrente
SELECT saldo FROM conto corrente WHERE numero conto corrente = 125
CAMPO
4
TABELLA
CONDIZIONE
Criteri di selezione
5
6
7
8
9
e
10
11
Query di Ordinamento
QUERY DI ORDINAMENTO: Ordina i dati della ricerca secondo l’ordine da noi
stabilito, ovvero secondo i dati di un campo che scegliamo.
Sintassi:
SELECT nomi_campi FROM nome_tabella ORDER BY campo.
Esempio: vogliamo estrarre tutti i dati contenuti nella tabella “libri” in modo che i libri siano
ordinati a seconda dell’anno di pubblicazione.
SELECT * FROM libri ORDER BY anno di pubblicazione
COMANDO PER SELEZIONARE TUTTI I CAMPI
12
Query di Accodamento
QUERY DI ACCODAMENTO: permette di aggiungere nuovi dati in una tabella
passandoli come stringhe di valori, anziché aggiungerli direttamente nelle tabelle
stesse.
Sintassi:
INSERT INTO nome_ tabella VALUES dati da aggiungere.
Esempio: vogliamo inserire un nuovo libro nella tabella “Libri”
INSERT INTO libri VALUES (i miei giorni, 1980).
DATI CHE ANDRANNO NEI CAMPI
“Titolo” e “Anno di pubblicazione”
13
Query di Eliminazione
QUERY DI ELIMINAZIONE: permette di eliminare da una tabella i record
selezionati mediante le istruzioni della query.
Sintassi:
DELETE FROM nome_tabella WHERE nome _campo = condizione.
Esempio: vogliamo eliminare dalla tabella “libri” il libro “I miei giorni”
DELETE FROM libri WHERE titolo = I miei giorni.
14
Query di eliminazione
Per esempio: eliminare
gli impiegati con
stipendio minore di
12.000
15
Query di Aggiornamento
QUERY DI AGGIORNAMENTO: permette di aggiornare il valore dei campi di una
tabella in base alle istruzioni della query.
Sintassi:
UPDATE nome_tabella SET nome_campo da aggiornare = aggiornamento
WHERE nome_campo = condizione.
Esempio: vogliamo aumentare del 10% il saldo del conto del signor Bianchi.
UPDATE conto corrente SET saldo = saldo * 1,1 WHERE cognome = Bianchi.
16
Query di aggiornamento
Per esempio: aggiornare
tutti i stipendi inferiori a
12.000 a 11.500
Tabella Impiegati:
Query:
Risultato nella tabella Impiegati:
17
Query di Unione
QUERY DI JOIN (UNIONE): chiama in gioco due tabelle correlate tra loro e
permette quindi di estrarre specifici dati appartenenti ad entrambe le tabelle.
Viene così detta perché unisce i dati di due tabelle, che devono però avere un
campo con valori in comune.
Sintassi:
SELECT nomi_campi FROM nomi_tabelle WHERE nome_campo
condizione AND nome_tabella.nome_campo chiave in comune
nome_tabella.nome_campo chiave in comune.
=
=
Esempio: vogliamo sapere nome e indirizzo dei correntisti che hanno un movimento in data
13-03-2001.
SELECT nome, indirizzo FROM conto corrente, movimento WHERE data = 13-03-2001 AND
conto corrente.numero conto corrente = movimento.numero conto corrente.
18
Query di Unione
In questo esempio, la query viene così costruita perché chiama in
causa due tabelle:
- la tabella “Conto Corrente” dove vi sono le informazioni relative
ai “nomi” e agli “indirizzi” dei correntisti;
- la tabella “Movimento” dove sono riportate le “date” dei
movimenti.
Le due tabelle sono correlate tra loro attraverso il campo chiave
“numero conto corrente”, che permette quindi di estrapolare
informazioni sui correntisti e sui movimenti da loro effettuati.
19
Campi calcolati
Campo calcolato: un campo “virtuale” nel risultato di un query


Il valore è un funzione di un o più campi nella tabella del query
Per esempio: combinare Nome e Cognome in un campo

20
Campi calcolati
La visualizzazione
foglio dati della query:
21
Campi calcolati
Un altro esempio di campo calcolato:



22
Campo in cui i valori sono Voto-1:
scrivere VotoDim: Voto-1 nella riga Campo
Viene visualizzato così:
Campi calcolati
Risultato:
23
Campi calcolati
Altri operatori matematici sono ammissibili:


Per esempio:


24
Espr: [Valore]*1,05
Bonus: [Stipendio]*1.000
Query di riepilogo


25
Se si utilizzano tabelle che contengono campi di tipo
numerico, è possibile creare query che riepilogano tutti i dati
contenuti in un campo
Una query di riepilogo può calcolare la somma, la media , il
valore minimo o massimo, il numero, la deviazione standard, la
varianza di un campo
Query di riepilogo
Per esempio: ottenere la media dei voti degli
studenti che hanno superato l’esame, e la media dei
voto degli studenti che non hanno superato l’esame
Query:
26
Risultato:
Query di riepilogo
Per esempio: ottenere il numero degli studenti che
hanno superato l’esame, e il numero degli studenti
che non hanno superato l’esame
Query:
27
Risultato:
Query di riepilogo
Aggiungere un criterio (come group by … having …
in SQL)
Per esempio: ottenere il minimo dei voti degli
studenti che hanno superato l’esame
Query:
28
Risultato:
Le MASCHERE
29
Che cos’è una Maschera
La Maschera è un’INTERFACCIA GRAFICA che semplifica le operazioni di
visualizzazione, inserimento e modifica dei dati di un database.
Una maschera può visualizzare solo determinate informazioni che interessano
l’utente, a differenza delle tabelle che presentano l’elenco completo di tutti i
record relativi ad uno stesso argomento.
La peculiarità consiste nel fatto che i campi di una maschera possono essere
prelevati da più tabelle diverse, e quindi ogni record di una maschera può
essere rappresentato da informazioni provenienti da tabelle differenti.
Esempio: attraverso una maschera è possibile visualizzare in un unico record le
informazioni relative ai libri di una biblioteca e le informazioni relative agli autori di
tali libri.
30
Maschera
31
Maschera e Tabella
32
Creazione di una Maschera
La creazione di una maschera avviene secondo procedimenti sequenziali, e
partendo dalla prima operazione occorre impostare:
i CAMPI, e quindi i dati, delle tabelle o delle query relative, che si vogliono
inserire nella maschera;
il LAYOUT da applicare alla maschera;
lo STILE da attribuire alla maschera;
il TITOLO da assegnare alla maschera;
La MODALITA’ DI APERTURA della maschera.
Ogni informazione all’interno di una maschera è contenuta in un controllo.
33
Riempimento di una Maschera
Le maschere sono simili a moduli cartacei: ad ogni campo corrisponde
un’etichetta ed è previsto uno spazio utilizzabile per l’inserimento delle
informazioni.
Una maschera può essere riempita inserendo nuovi record che si vanno ad
aggiungere a quelli già presenti nella maschera stessa.
N.B. i dati introdotti in una maschera vengono automaticamente introdotti nella
tabella o nelle tabelle che supportano la maschera stessa.
34
I REPORT
35
Che cos’è un Report
- Un Report è uno strumento che permette di organizzare e riepilogare le
informazioni contenute in un database.
- In italiano il termine corrisponde a RAPPORTO, quindi un report è una sorta di
relazione sulle informazioni contenute nel database, un modo per “renderle
pubbliche”.
- Un Report consente di rappresentare i dati con un accurato profilo estetico
grazie alla possibilità di controllare le dimensioni e l’aspetto di tutti gli elementi
del report (intestazioni, piè di pagina, corpo e titoli).
- In genere i Report sono destinati alla stampa.
36
Creazione di un Report
La creazione di un report prevede diverse fasi. Partendo dalla prima, occorre
scegliere:







le TABELLE o le QUERY dalle quali estrarre i dati, e quindi i CAMPI che
vogliamo siano compresi nel Report;
su QUALE BASE VISUALIZZARE I DATI;
se uno o più campi tra quelli inseriti devono essere usati come CRITERIO
DI RAGGRUPPAMENTO;
se i record devono essere ORDINATI in base ad un determinato campo;
il LAYOUT e l’ORIENTAMENTO da attribuire al Report;
lo STILE del Report;
il TITOLO per il nostro Report.
37