Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access™ Le Query Luca De Ponti Lucidi realizzati da: Danilo Ardagna, Cinzia Cappiello e Pierluigi Plebani
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Indice Uso dei fogli dati Query di selezione
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Visualizzazione dei dati Recordset: –Record corrente –Navigazione Formato del foglio dati: –Altezza/larghezza righe e colonne –Posizione delle colonne –Colonne nascoste e bloccate –Rimozione della griglia Sostituzioni –Sostituire Novotel con Hilton nella tabella Albergo
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Ordinamento dei dati Ordinamento dei singoli campi Filtri avanzati: –Visualizzare la tabella Cliente in ordine crescente secondo i campi Cognome e Nome –Visualizzare la tabella Pernottamento in ordine crescente secondo DataArrivo e Totale Comando Trova (Formattazione Date) –Trovare le prenotazioni del mese di gennaio Filtro in base a selezione –Trovare le prenotazioni per la stanza 102 all’Hotel Ibis di Milano Filtro in base a maschera: –Ricercare le prenotazioni del mese di gennaio in alberghi romani
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Query di selezione Selezionare le camere dell’Hotel Hilton di Tolosa Selezionare le prenotazioni di gennaio 2001 Selezionare le camere matrimoniali con più di 3 letti Calcolo di valori: per ogni prenotazione calcolare il numero di giorni di permanenza del cliente
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Query di selezione Selezionare le camere dell’Hotel Hilton a Tolosa e Parigi Trovare le prenotazioni per la stanza 102 all’Hotel Ibis di Milano nel mese di settembre del 2000 Selezionare i pernottamenti saldati la cui prenotazione è avvenuta nei mesi di gennaio ed in cui la differenza tra anticipo e totale è stato superiore a L
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Funzioni di data e ora FunzioneDescrizione Day(data)Restituisce un valore da 1 a 31 indicante il giorno del mese Month(data)Restituisce un valore da 1 a 12 indicante il mese dell’anno Year(data)Restituisce un valore da 100 a 9999 indicante l’anno Weekday(data)Restituisce un valore da 1 (domenica) a 7 (sabato) indicante il giorno della settimana
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Funzioni di data e ora FunzioneDescrizione Hour(data)Restituisce un valore da 0 a 23 indicante l’ora del giorno DatePart(intervallo; data) Restituisce una porzione della data o dell’ora che dipende dal codice di intervallo specificato (es. con il codice “q” viene restituito un valore da 1 a 4 che corrisponde al trimestre dell’anno; con il codice “ww” viene restituito un valore da 1 a 53 che corrisponde alla settimana dell’anno) Date()Restituisce la data corrente del sistema
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Query di selezione Determinare l’elenco dei clienti e del loro indirizzo completo (uso del generatore di espressioni) Selezionare i pernottamenti ad oggi non confermati Ordinamento dei risultati delle query Query di totalizzazione: –Determinare per ogni albergo il numero di camere –Determinare gli alberghi con più di 8 camere –Valutare la media dell’importo dei pernottamenti dell’Hotel Ibis di Londra
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Funzioni di aggregazione FunzioneDescrizione SommaCalcola la somma di tutti i valori del campo in ogni gruppo. Può essere utilizzata solo per campi di tipo Numerico e Valuta MediaCalcola la media aritmetica dei valori del campo in ogni gruppo. Può essere utilizzata solo per campi di tipo Numerico e Valuta MinCalcola il minimo valore presente per il campo in ogni gruppo. Per i campi numerici Min restituisce il valore minimo; per i campi testo, Min restituisce il valore più basso in ordine alfabetico indipendentemente dalle maiuscole
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Funzioni di aggregazione FunzioneDescrizione MaxCalcola il massimo valore presente per il campo in ogni gruppo. Per i campi numerici Max restituisce il valore massimo; per i campi testo, Max restituisce il valore più alto in ordine alfabetico indipendentemente dalle maiuscole ConteggioRestituisce il numero delle righe in cui il campo non assume valore NULL DevStCalcola la deviazione standard dei valori del campo in ogni gruppo. Può essere utilizzata solo per campi di tipo Numerico e Valuta. Se il gruppo non contiene almeno due righe viene restituito un valore NULL
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Funzioni di aggregazione FunzioneDescrizione VarCalcola la varianza dei valori del campo in ogni gruppo. Può essere utilizzata solo per campi di tipo Numerico e Valuta. Se il gruppo non contiene almeno due righe viene restituito un valore NULL PrimoRestituisce il valore del campo per la prima riga incontrata nel gruppo. N.B. la prima riga potrebbe non essere quella con il valore minimo UltimoRestituisce il valore del campo per l’ultima riga incontrata nel gruppo. N.B. l’ultima riga potrebbe non essere quella con il valore massimo
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Query di selezione Uso di parametri nelle query: determinare i pernottamenti non confermati a partire da una certa data specificata dall’utente Ricerca in Tabelle Multiple: determinare l’elenco dei clienti che hanno pernottato negli alberghi di Parigi (clausola distinct) Determinare per ogni cliente l’elenco degli alberghi in cui ha pernottato Determinare l’elenco dei clienti che hanno pernottato a Parigi (sfruttando la query precedente)
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Query di selezione Determinare per ogni cliente, l’elenco delle camere in cui ha pernottato indicando se la camera era singola o matrimoniale Determinare l’elenco dei clienti che hanno occupato camere singole (usare la query precedente) Determinare per ogni cliente il numero medio di giorni di permanenza negli alberghi della catena (suggerimento: determinare prima il numero di giorni di permanenza di ogni pernottamento)
Politecnico di Milano Corso di Sistemi Informatici A.A. 2004/2005 Access 2000 ™ - Query di selezione Limiti all’uso delle query di selezione per l’aggiornamento dei dati Non è possibile modificare un campo calcolato Non è possibile modificare query di totalizzazione Non è possibile modificare i campi chiave del lato uno del risultato di un join a meno che non sia impostata la modifica a catena I campi contatore non possono essere modificati