(Ebook - Ita - Manuali) Microsoft Access - query avanzato.pdf

8
Vivoscuola - Strumenti http://www.vivoscuola.it/strumenti/manuali/AC_que.asp 1 di 8 19/07/2005 18.15 e query Generalità Esistono molti tipi di Query, ma quelle più usate sono senz'altro le Query di selezione. Una Query di selezione è un insieme memorizzato di comandi di selezione di record che consente di recuperare i dati da una o più tabelle utilizzando i criteri specificati e di visualizzarli nell'ordine desiderato. E' un oggetto, come le Tabelle, con un nome e, a differenza dei Filtri, può essere richiamato e rieseguito. I sottoinsiemi di dati generati da una Query sono spesso chiamati dynaset. La creazione guidata Access include quattro sistemi di creazione guidata delle Query: creazione guidata Query semplice; creazione guidata Query a campi incrociati; creazione guidata ricerca duplicati; creazione guidata ricerca dati non corrispondenti. La creazione guidata Query semplice è quella di uso generale per la costruzione di Query di selezione. Il primo passaggio di questa creazione guidata chiede, innanzitutto di specificare qual'è la Tabella da cui devono essere estratti i dati, e poi di selezionare i campi che si desiderano visualizzare. Evidenziare i campi e selezionarli con il pulsante " > ".

description

Microsoft Access - query avanzato

Transcript of (Ebook - Ita - Manuali) Microsoft Access - query avanzato.pdf

Page 1: (Ebook - Ita - Manuali) Microsoft Access - query avanzato.pdf

Vivoscuola - Strumenti http://www.vivoscuola.it/strumenti/manuali/AC_que.asp

1 di 8 19/07/2005 18.15

e query

Generalità

Esistono molti tipi di Query, ma quelle più usate sono senz'altro le Querydi selezione. Una Query di selezione è un insieme memorizzato di comandi diselezione di record che consente di recuperare i dati da una o più tabelleutilizzando i criteri specificati e di visualizzarli nell'ordine desiderato. E' un oggetto, come le Tabelle, con un nome e, a differenza dei Filtri,può essere richiamato e rieseguito.

I sottoinsiemi di dati generati da una Query sono spesso chiamatidynaset.

La creazione guidata

Access include quattro sistemi di creazione guidata delle Query:

creazione guidata Query semplice;creazione guidata Query a campi incrociati;creazione guidata ricerca duplicati;creazione guidata ricerca dati non corrispondenti.

La creazione guidata Query semplice è quella di uso generale per lacostruzione di Query di selezione. Il primo passaggio di questa creazione guidata chiede, innanzitutto dispecificare qual'è la Tabella da cui devono essere estratti i dati, e poi diselezionare i campi che si desiderano visualizzare. Evidenziare i campi eselezionarli con il pulsante " > ".

Page 2: (Ebook - Ita - Manuali) Microsoft Access - query avanzato.pdf

Vivoscuola - Strumenti http://www.vivoscuola.it/strumenti/manuali/AC_que.asp

2 di 8 19/07/2005 18.15

La successiva finestra permette di scegliere il nome da assegnare allaQuery che si sta costruendo, indicare il nome e confermare.

Con il procedimento appena illustrato viene creata e visualizzata unanuova Query.

I dati visualizzati nella Query sono i dati della Tabella da cui èstata fatta l'estrazione: ciò vuol dire che qualsiasi modifica,eliminazione, inserimento di dati agisce direttamente sullaTabella. Di conseguenza ogniqualvolta si esegue una Query si è certi che idati visualizzati sono quelli aggiornati.

La finestra struttura query

Per poter modificare una Query, o anche per crearne di nuove senza lacreazione guidata, occorre lavorare in visualizzazione Struttura delleQuery.

Page 3: (Ebook - Ita - Manuali) Microsoft Access - query avanzato.pdf

Vivoscuola - Strumenti http://www.vivoscuola.it/strumenti/manuali/AC_que.asp

3 di 8 19/07/2005 18.15

La finestra è divisa in due parti: in quella superiore è presente l'elencodelle Tabelle occorrenti per la Query. Nella parte inferiore, detta QBE(Query By Exemple), è presente una griglia in cui vengono raccolte leinformazioni che concorrono alla creazione della Query (ad esempiol'elenco dei campi, i criteri…).

Salvare una query

Una delle grandi potenzialità di una Query è quella di poter esseresalvata, per poi essere utilizzata sicuri di trovare sempre i datiaggiornati. Per effettuare il salvataggio, basta scegliere il comando File - Salva ofare clic sull'icona corrispondente e dare alla Query un nome qualsiasi,purché non già utilizzato per altre Query o Tabelle.

Aggiungere, eliminare e spostare campi

Per aggiungere un ulteriore campo si può procedere in diversi modi:

fare doppio clic su uno dei campi dell'elenco, il nome selezionatocomparirà nella griglia;fare un clic sul campo e trascinarlo sulla griglia;all'interno della prima riga della griglia aprire il menu a tendinache si presenta e selezionare il campo desiderato.

Per inserire tutti i campi della Tabella, basta fare un doppio clicsull'intestazione dell'elenco campi e poi trascinare l'elencoselezionato, oppure fare un doppio clic sull'asterisco (*) presenteall'inizio dell'elenco dei campi.

Per eliminare un campo basta selezionarlo facendo un clic sulla parteimmediatamente sopra il nome di campo e cancellarlo con CANC.

Page 4: (Ebook - Ita - Manuali) Microsoft Access - query avanzato.pdf

Vivoscuola - Strumenti http://www.vivoscuola.it/strumenti/manuali/AC_que.asp

4 di 8 19/07/2005 18.15

Anche per spostare un campo è necessario selezionarlo, per poitrascinarlo nella posizione desiderata.

L'ordinamento dei dati

Dopo aver inserito tutti i campi necessari per la Query, potrebbe esserenecessario ordinarli. Fare clic sulla riga Ordinamento del campo rispettoa cui si vuole eseguire l'ordinamento e scegliere Crescente oDecrescente.

Access è in grado di eseguire l'ordinamento in base a più campi. In talcaso inizierà ad eseguire l'ordinamento procedendo sempre da sinistraverso destra: prima rispetto al primo campo e quindi, a parità di primachiave di ordinamento, in base alla seconda e così via.

Non mostrare campi

Nella visualizzazione struttura è presente una riga denominata Mostra.Ogni colonna di questa riga contiene una casella. Risultanocontrassegnate da un segno di spunta tutte le colonne mostrate nelfoglio dati. Per eliminare una colonna dalla visualizzazione foglio dati fareclic sulla relativa casella per eliminare il segno di spunta.

Aggiungere criteri di selezione

La terza riga della griglia della struttura è denominata Criteri. E' inquesta posizione che bisogna scrivere i criteri di selezione posizionandosinella colonna relativa al campo rispetto al quale si vuole effettuare unaricerca.

Se, ad esempio, si volessero ricercare solo i clienti che abitano a Londra,basterebbe scrivere "Londra" (i doppi apici racchiudono i testi) nellacolonna relativa al campo Città.

Page 5: (Ebook - Ita - Manuali) Microsoft Access - query avanzato.pdf

Vivoscuola - Strumenti http://www.vivoscuola.it/strumenti/manuali/AC_que.asp

5 di 8 19/07/2005 18.15

Gli operatori booleani

Gli operatori booleani sono simboli di confronto, necessari per la scritturadei criteri.

Simbolo Significato Esempio

> maggiore > 5000

< minore < 1000

>= maggiore o uguale >= 10000

<= minore o uguale <= 4000

<> diverso <> 4100

= uguale = 541

between .. and.. compreso tra xxx e yyy between 100 and 200

Occorre tener presente, per l'impostazione dei criteri, che i testi devonoessere racchiusi tra doppi apici (ad esempio "Londra"), e le date tra #(ad esempio # 1/1/98 # ).

Criteri in AND e in OR

Due o più criteri si dicono in AND se le condizioni sono da soddisfarecontemporaneamente, mentre si dicono in OR se sono in alternativa. Ad esempio, se si cercano tutti i clienti che hanno i capelli rossi AND gliocchi blu si troveranno solo quelli che hanno entrambe le caratteristiche,mentre la condizione: capelli rossi OR gli occhi blu è soddisfatta da tutticoloro che abbiano almeno una tra le due caratteristiche.

Nelle Query di Access tutte le condizioni che si trovano sullastessa riga sono in AND. Le condizioni su righe diverse sono inOR.

Per aggiungere un criterio in OR basta scriverlo su un'altra riga, adesempio, con la seguente ricerca, si otterranno tutti i nomi dei clienti cherisultano essere direttori marketing oppure direttori commerciali:

Invece con il criterio seguente si troveranno tutti i clienti che risultanoessere direttori commerciali e che abitano a Londra:

Page 6: (Ebook - Ita - Manuali) Microsoft Access - query avanzato.pdf

Vivoscuola - Strumenti http://www.vivoscuola.it/strumenti/manuali/AC_que.asp

6 di 8 19/07/2005 18.15

Criteri su campi di testo

Come già detto, le ricerche sui campi di tipo testo sono molto semplici,basta racchiudere il testo da cercare tra apici (") all'interno della rigaCriteri di una Query e la ricerca può essere effettuata. Tuttavia a volte è necessario effettuare ricerche un po' più complesse diquelle appena descritte, come, ad esempio, la ricerca con criteri nonesatti. In questi casi si ricorrerà all'utilizzo dei caratteri jolly.

I caratteri jolly sono un insieme di caratteri che servono ad indicare altricaratteri qualsiasi. In particolare:

? Sta ad indicare qualsiasi carattere singolo.

* Sta ad indicare un qualsiasi gruppo di caratteri.

# Sta ad indicare qualsiasi cifra singola (0-9).

Ogniqualvolta si utilizzano i caratteri jolly nei criteri di ricerca ènecessario servirsi dell'operatore Like.

Se, ad esempio, si volessero cercare tutti i clienti con nome che iniziacon la lettera C, il criterio di ricerca da inserire nella griglia della Query èLike "C*".

Esempi di utilizzo di caratteri jolly:

Destinatario Like "S*" Ordini spediti a clienti i cui nomi inizianocon la lettera S.

Destinatario Like"*Importazioni"

Ordini spediti a clienti i cui nomiterminano con la parola "Importazioni"

Page 7: (Ebook - Ita - Manuali) Microsoft Access - query avanzato.pdf

Vivoscuola - Strumenti http://www.vivoscuola.it/strumenti/manuali/AC_que.asp

7 di 8 19/07/2005 18.15

Importazioni terminano con la parola Importazioni .

Destinatario Like "*s.p.a.*" Ordini spediti a clienti i cui nomiincludono la sequenza di lettere "s.p.a."

Destinatario Like "MaisonDewe?"

Ordini spediti al cliente con "Maison"nella prima parte del nome e con uncognome di 5 lettere in cui le prime 4sono "Dewe" e l'ultima è sconosciuta.

Parametri

A volte può tornare utile costruire una Query generalizzata in cui, almomento dell'esecuzione, venga richiesto all'utilizzatore di specificare ilcriterio. Tale Query è detta Query con parametri.

Una Query con parametri visualizza una o più finestre di dialogopredefinite in cui viene richiesto di specificare il valore per i parametri(criteri).

Per creare una Query con parametro:

creare una Query di selezione.Nella cella Criteri, digitare una richiesta racchiusa tra parentesiquadre per ciascun campo che si desidera utilizzare comeparametro. Questa richiesta viene visualizzata quando si esegue laQuery. Il testo della richiesta deve essere diverso dal nome dicampo, anche se può includere tale nome.Ad esempio con la Query seguente:

al momento dell'esecuzione viene richiesto:

Query su più tabelle

La forza di un database relazionale consiste nella possibilità di realizzarericerche anche utilizzando più Tabelle.

La differenza fondamentale tra una Query basata su un'unica tabella eduna Query basata su più tabelle consiste nel collegamento tra le tabelle.Nella visualizzazione Struttura della Query sono visualizzati icollegamenti tra tabelle rappresentati con una linea tra le stesse.

E' sempre meglio collegare le tabelle tramite relazioni in fase diprogettazione ma, anche se non lo si è fatto prima, si possono collegaretabelle anche all'interno di una Query Il legame (join) costruito in tal

Page 8: (Ebook - Ita - Manuali) Microsoft Access - query avanzato.pdf

Vivoscuola - Strumenti http://www.vivoscuola.it/strumenti/manuali/AC_que.asp

8 di 8 19/07/2005 18.15

tabelle anche all interno di una Query. Il legame (join) costruito in talcaso sarà valido solo all'interno della Query in cui lo si crea.

Access evidenzia la differenza tra relazioni e join.

Per costruire una Query con più tabelle:

posizionati sull'oggetto Query del database fare clic su Nuovo;fare doppio clic su Visualizzazione struttura;selezionare le Tabelle che si desiderano aggiungere e chiudere lafinestra Aggiungi tabella;se tra le Tabelle evidenziate non compaiono le linee delleRelazioni, provvedere a collegare le tabelle tramite i campi chedeterminano il legame;aggiungere nella griglia della Query tutti i campi desideratiprovenienti da una qualsiasi delle Tabelle presenti;continuare con gli ordinamenti ed i criteri come fatto nel caso diQuery basate su un'unica Tabella.