Creazione di ricerche

From Apache OpenOffice Wiki
Jump to: navigation, search







Pagina in traduzione - translation in progress





Le ricerche servono ad ottenere specifiche informazioni da un database. Usando la nostra tabella Collezione CD, creeremo un elenco di album di un particolare artista, usando la Creazione guidata. Tra le informazioni che vogliamo ricavare dai dati della tabella Carburante c'è il consumo medio: possiamo ottenerlo utilizzando la Vista struttura.

Template:Documentation/Note

Utilizzo della Creazione guidata per creare una ricerca

Le ricerche prodotte dalla creazione guidata forniscono uno o più elenchi di informazioni, in base a quello che si vuole conoscere. E' possibile ottenere una o più risposte a seconda delle circostanze. È preferibile creare in Vista struttura le ricerche che richiedono dei calcoli.

Nella finestra principale del database, fate clic sull'icona Ricerche nella sezione Database e poi su Usa procedura guidata per la creazione di interrogazioni nella sezione Attività. Si apre la finestra Creazione guidata ricerca. Ciò che desideriamo sapere è quali album sono di un certo gruppo o musicista (l'autore dell'album). Possiamo anche includere la data di acquisto di ogni album.

Template:Documentation/Note

Prima pagina della Creazione guidata ricerca.

Passo 1: Selezionate i campi.

  1. Selezionate la tabella Collezione-CD dall'elenco a tendina delle tabelle.
    • Se la voce selezionata nell'elenco Tabelle non è Tabella: Collezione_CD, fate clic sulla freccia (contrassegnata in rosso nella figura sopra riportata).
    • Fate clic su Tabella: Collezione_CD nell'elenco per selezionarla.
  2. Selezionate i campi dalla tabella Collezione_CD nell'elenco Campi disponibili.
    • Fate clic su TitoloAlbum, e usate il pulsante > per spostarlo nell'elenco Comandi di campo nella ricerca.
    • Allo stesso modo spostate i campi Interprete e DataAcquisto.
  3. Usate Freccia Su per cambiare l'ordine dei campi in: Interprete, TitoloAlbum e DataAcquisto.
    • Fate clic sul campo Collezione-CD.Interprete.
    • Poi su Freccia Su per spostarlo sopra a Collezione-CD.TitoloAlbum.
  4. Fate clic su Avanti.
Elenco dei campi aggiunti alla ricerca.

Template:Documentation/Tip

Passo 2: Selezionate il tipo di ordinamento.

Per ordinare le informazioni della ricerca è possibile indicare fino a quattro campi. La scelta implica una piccola riflessione volta ad individuare qual è il campo più importante.

Nella nostra ricerca, più importante di tutti è il campo Interprete. Ad esso segue il titolo dell'album, e la data di acquisto è il meno importante di tutti. Naturalmente, se fossimo interessati a sapere che tipo di musica abbiamo comprato un certo giorno, la data di acquisto sarebbe il dato più importante.

[[Image:|thumb|Figura 3: Impostare l'ordinamento della pagina]]












  1. Fate clic sull'elenco a tendina Ordina per .
    • Fate clic su Collezione-CD.Interprete per selezionarlo.
    • Se volete che gli Interpreti siano elencati in ordine alfabetico (a-z), selezionate Crescente a destra. Se volete che l'elenco degli interpreti sia in ordine inverso (z-a), selezionate Decrescente (Figura 3).
  1. Fate clic sul secondo elenco Quindi per .
    • Selezionate Collezione-CD.TitoloAlbum.
    • Selezionate Crescente o Decrescente in base alle vostre preferenze.
  1. Ripetete questa procedura per Collezione_CD.DataAcquisto.
  2. Fate clic su Avanti.

Passo 3: Selezionate le condizioni di ricerca.

Le condizioni di ricerca disponibili sono sotto elencate. Esse ci permettono di confrontare il nome da noi inserito con il nome dell'artista nel nostro database e di conseguenza decidere se includere o meno quel particolare artista nella nostra ricerca.

  • è uguale a : lo stesso
  • non è uguale a : diverso
  • è minore di : viene prima di
  • è maggiore di : viene dopo di
  • è uguale o minore di : è lo stesso o viene prima di
  • è uguale o maggiore di : è lo stesso o viene dopo di
  • come : simile in qualche modo


Nota
Queste condizioni si applicano a numeri, lettere (seguendo l'ordine alfabetico) e date.
  1. Dal momento che stiamo cercando una sola cosa, useremo l'impostazione standard Trova tutti i seguenti.
  2. Stiamo cercando un particolare artista, quindi selezionate è uguale a.
  3. Inserite il nome dell'artista nel campo Valore. Fate clic su Avanti.

Passo 4: Selezionate il tipo di ricerca.

Vogliamo un'informazione semplice, quindi l'impostazione standard: Ricerca dettagliata risponde alle nostre esigenze. Fate clic sul pulsante Avanti nella parte inferiore della finestra.


Nota
Dal momento che abbiamo una ricerca semplice, il Raggruppamento e le Condizioni di raggruppamento non ci servono. Questi due passi vengono saltati nella nostra procedura.

Passo 5: Assegnate gli Alias desiderati.

Lasciamo le impostazioni standard. Fate clic su Avanti.

Passo 6: Panoramica.

Assegnate un nome alla ricerca (ad esempio: Ricerca_Interprete). Alla destra del nome ci sono due possibili scelte; selezionate Mostra ricerca. Fate clic su Fine.

Passo 7: Modifica della ricerca.

Dato che non abbiamo nessuna modifica da fare, questo passaggio verrà saltato. Se selezionate la scelta Modifica ricerca, la ricerca si aprirà in Vista struttura. Per eseguire delle modifiche, seguite le istruzioni nella prossima sezione, “Utilizzo della Vista struttura per creare una ricerca”.

Utilizzo della Vista struttura per creare una ricerca

Creare ricerche usando la Vista struttura non è difficile come potrebbe sembrare a prima vista. Può richiedere molti passaggi, ma ognuno di essi è abbastanza semplice.

Quanto consuma il nostro veicolo (in chilometri per litro)? Questa domanda richiede la creazione di due ricerche, di cui la prima è usata come parte della seconda.


Attenzione
[[Image:]]
Le procedure che utilizzeremo funzionano unicamente con i database relazionali; questo è dovuto al modo in cui essi sono costituiti. Gli elementi di un database relazionale sono unici (tale unicità è garantita dalla chiave primaria); non esistono quindi due elementi completamente uguali tra loro. Questo ci consente di selezionare elementi specifici, da posizionare nelle nostre ricerche. Senza l'univocità degli elementi di un database relazionale, non potremmo eseguire queste procedure.

Passo 1: Aprite la prima ricerca in Vista struttura.

Fate clic su Crea ricerca in vista struttura.

Passo 2: Aggiungete le tabelle.

[[Image:|thumb|Figura 4: Finestra Aggiungi tabella o ricerca]]
  1. Fate clic su Carburante per evidenziarlo.
  2. Fate clic sul pulsante Aggiungi, quindi su Chiudi.


Suggerimento
Spostate il cursore sul bordo inferiore della tabella Carburante (Figura 5). Il cursore si trasforma in una freccia a due teste. Trascinate la parte inferiore della tabella per allungarla e visualizzare così tutti i campi presenti.
[[Image:|thumb|Figura 5: Tabella Carburante nella ricerca]]

Passo 3: Aggiungete i campi nella tabella in basso.

  1. Fate doppio clic sul campo IDCarburante nella tabella Carburante,
  2. sul campo Chilometraggio e
  3. sul campo QuantitàCarburante.

La tabella in basso nella finestra della ricerca è costituita adesso da tre colonne (Figura 6).

[[Image:|thumb|Figura 6: Tabella ricerca]]

Passo 4: Impostate i criteri per la ricerca.

Vogliamo che il campo IDCarburante della ricerca inizi con il numero 1.

  1. Nella tabella Ricerca, scrivete >0 nella cella Criteri sotto IDCarburante.
  2. Fate clic sull'icona Esegui ricerca nella barra degli strumenti Struttura ricerca. Quest'icona è contrassegnata da un cerchio rosso nella Figura 7.
[[Image:|thumb|Figura 7: Barra degli strumenti Struttura ricerca]]

La Figura 8 contiene la tabella Carburante con le voci inserite ed il risultato della ricerca basata su tale tabella.

[[Image:|thumb|Figura 8: La tabella Carburante e la relativa ricerca]]

Passo 5: Salvate e chiudete la ricerca.

Visto che questa ricerca contiene l'ultima lettura del contachilometri, necessaria per i nostri calcoli, la chiameremo Ultima_lettura al momento del salvataggio. Ora chiudete la ricerca.

Passo 6: Create la ricerca che calcola il consumo di carburante.

  1. Fate clic su Crea ricerca in vista struttura per aprire una nuova ricerca.
  2. Aggiungete nella ricerca la tabella Carburante, come già fatto al passo 2: Aggiungete le tabelle. Ma non chiudete la finestra Aggiungi tabelle.
  3. Aggiungete la ricerca Ultima_lettura a quella appena creata.
    1. Fate clic sul pulsante di scelta Ricerca per ottenere la lista delle ricerche presenti nel database (Figura 9).
[[Image:|thumb|Figura 9: Selezione di ricerche da aggiungere ad un'altra ricerca]]
    1. Fate clic su Ultima_lettura.
    2. Fate clic su Aggiungi, e quindi su Chiudi.

Passo 7: Aggiungete i campi alla tabella nella parte inferiore della ricerca.

Vogliamo calcolare il consumo di carburante: per fare ciò abbiamo bisogno della quantità di carburante e della distanza percorsa. Poiché la quantità di carburante che dobbiamo considerare si trova in corrispondenza dell'ultima lettura del contachilometri, useremo la ricerca Ultima_lettura per ottenerla. Useremo anche il campo Chilometraggio dalla tabella Carburante e dalla ricerca Ultima-Lettura.

[[Image:|thumb|Figura 10: Le tabelle di questa ricerca]]
  1. Fate doppio clic sul campo QuantitàCarburante nella ricerca Ultima_lettura,
  2. e poi su Chilometraggio.
  3. Fate doppio clic su Chilometraggio nella tabella Carburante.
[[Image:|thumb|<center>
Figura 11: Campi aggiunti alla ricerca]]</center>

Passo 8: Inserite la differenza di campo IDCarburante.

Vogliamo impostare ad uno (1) la differenza tra il valore del campo IDCarburante della tabella Carburante ed il valore IDCarburante della ricerca Ultima-Lettura.

  1. Scrivete "Ultima_lettura"."IDCarburante" - "Carburante"."IDCarburante" nel campo a destra del campo Contachilometri della tabella Carburante (Figura 12).

Digitate il numero 1 (uno) nella cella Criteri di questa colonna.

[[Image:|thumb|Figura 12: Digitare nel calcolo dei campi]]
  1. Calcolare la distanza percorsa (Figura 13):
    • Digitate "Ultima_lettura"."Contachilometri" – "Carburante"."Contachilometri" nella cella Campo.
    • Digitate >0 nella cella Criteri.
[[Image:|thumb|Figura 13: Campo per il calcolo della distanza percorsa]]
  1. Calcolare il consumo di carburante (Figura 14):

Scrivete ("Ultima_lettura"."Contachilometri" – "Carburante"."Contachilometri")/"Ultima_lettura"."QuantitàCarburante" nel campo della colonna immediatamente a destra.

[[Image:|thumb|Figura 14: Campo di calcolo per il consumo di carburante]]


Attenzione
[[Image:]]
Quando inserite campi per questi calcoli, dovete utilizzare il formato: nome della tabella o della ricerca seguito da un punto (.) e quindi dal nome del campo. Per le tabelle o ricerche aventi nomi composti separati da trattini, racchiudete il nome tra virgolette doppie. La ricerca aggiungerà automaticamente le virgolette rimanenti, come nella Figura 12.

Usate il simbolo aritmetico tra i due elementi. È possibile eseguire più operazioni utilizzando le parentesi per raggruppare le operazioni aritmetiche.

Passo 9: Avviate la ricerca e fate alcune modifiche.

Dopo avere avviato la ricerca per essere sicuri che tutto funzioni correttamente, nascondiamo tutti i campi di cui non abbiamo bisogno.

  1. Fate clic sull'icona Esegui ricerca nella barra Struttura ricerca (Figura 7). Il risultato sarà simile a quello mostrato nella Figura 15.
[[Image:|thumb|Figura 15: Risultato della ricerca consumo di carburante]]

Notate che alcune etichette di colonna non sono visibili per intero perché troppo lunghe; possiamo risolvere questo problema usando un alias (soprannome) per molti di questi campi; le etichette verranno sostituite dai loro alias.

  1. Aggiungete gli alias:

Scriveteli alla voce Alias come mostrato nella Figura 16.

[[Image:|thumb|Figura 16: Tabella ricerca con gli alias inseriti]]
  1. Eseguite di nuovo la ricerca. Il risultato è raffigurato nella Figura 17.
[[Image:|thumb|Figura 17: Esecuzione della ricerca con l'utilizzo degli alias]]

Non abbiamo bisogno della colona che ci mostra la differenza tra il campo IDCarburante della tabella e quello della ricerca, quindi la nasconderemo. Nonostante non sia visibile, verrà comunque usata per i calcoli.

  1. È preferibile nascondere un campo quando non è necessario vederlo.

Rimuovete la spunta dalla casella di controllo della cella Visibile come nella Figura 18.

[[Image:|thumb|Figura 18: Rendere un campo invisibile nell'esecuzione di una ricerca]]
  1. Eseguite nuovamente la ricerca (Figura 19).
[[Image:|thumb|Figura 19: Esecuzione di una ricerca con gli alias]]

Passo 10: Chiudete, salvate ed assegnate un nome alla ricerca.

Il nome di questa ricerca potrebbe essere Consumo carburante.

È ovviamente possibile eseguire molti altri calcoli in questa ricerca, come per esempio il costo per distanza percorsa o quanto abbiamo pagato complessivamente con ogni tipo di pagamento utilizzato.


Nota
Per utilizzare appieno le ricerche sono necessarie competenze matematiche, in particolare sulle operazioni insiemistiche (unioni, intersezioni, AND, OR, complementi e loro combinazioni). Ad esempio, abbiamo elencato tutti i nostri criteri in una riga: questo significa che tutti questi criteri devono essere soddisfatti perché una serie di valori venga scritta nella ricerca. Questo è il funzionamento dell'operatore AND nella matematica degli insiemi.

E' inoltre opportuno avere una copia della Guida all'uso di Hsqldb, disponibile sul sito http://hsqldb.org/.














Step 2: Select the sorting order.

Up to four fields can be used to sort the information of our query. A little simple logic helps at this point. Which field is most important?

In our query, the artist is most important. The album title is less important, and the date purchased is of least importance. Of course, if we were interested in what music we bought on a given day, the date purchased would be the most important.

Sorting order page.
  1. Click the first Sort by dropdown list.
    • Click CD-Collection.Artist to select it.
    • If you want the artists to be listed in alphabetical order (a-z), select Ascending on the right. If you want the artist listed in reverse order (z-a), select Descending on the right.
  2. Click the second Sort by dropdown list.
    • Click CD-Collection.ArtistTitle.
    • Select Ascending or Descending according to the order you want.
  3. Repeat this process for CD-Collection.DatePurchased.
  4. Click Next.

Top of page

Step 3: Select the search conditions.

The search conditions available are listed below. They allow us to compare the name we entered with the names of the artist in our database and decide whether to include a particular artist in our query or not.

  • is equal to: the same as
  • is not equal to: not the same as
  • is smaller than: comes before
  • is greater than: comes after
  • is equal or less than: the same as or comes before
  • is equal or greater than: the same as or comes after
  • like: similar to in some way

Template:Documentation/Note

  1. Since we are only searching for one thing, we will use the default setting of Match all of the following.
  2. We are looking for a particular artist, so select is equal to.
  3. Enter the name of the artist in the Value box. Click Next.

Top of page

Step 4: Select type of query.

We want simple information, so the default setting: Detailed query is what we want. Click Next at the bottom of the window.

Template:Documentation/Note

Step 5: Assign aliases if desired.

We want the default settings. Click Next.

Step 6: Overview.

Name the query (suggestion: Query_Artists). To the right of this are two choices. Select Display Query. Click Finish.

Step 7: Modify the query.

We are skipping this step since we have nothing to modify. If you select the Modify Query choice, the query would open in Design view. To make modifications, follow the instructions in the next section, “Using the Design View to create a query".

Top of page

Using the Design View to create a query

Creating a query using Design View is not as hard as it may first seem. It may take multiple steps, but each step is fairly simple.

What fuel economy is our vehicle getting (miles per gallon in the USA)? This question requires creating two queries, with the first query being used as part of the second query.

Documentation caution.png The procedures we will be using only work with relational databases. This is because of how relational databases are constructed. The elements of a relational database are unique. (The primary key insures this uniqueness.) That is, there are no two elements which are exactly alike. This allows us to select specific elements to place into our queries. Without the elements of the relational database being unique from all other elements, we could not perform these procedures.

Top of page

Step 1: Open the first query in Design View.

Click Create Query in Design View.

Step 2: Add tables.

Add Tables or Query window.
  1. Click Fuel to highlight it.
  2. Click Add.
  3. Click Close.

Template:Documentation/Tip

Fuel table in query.

Top of page

Step 3: Add fields to the table at the bottom.

  1. Double-click the FuelID field in the Fuel table.
  2. Double-click the Odometer field.
  3. Double-click the FuelQuantity field.

The table at the bottom of the query window should now have three columns.

Query table.

Top of page

Step 4: Set the criterion for the query.

We want to the query's FuelID to begin with the numeral 1.

  1. Type >0 in the Criterion cell under FuelID in the query table
  2. Click the Run Query icon in the Query Design toolbar. This icon is circled in red below.
Query Design toolbar.

The figures below contain the Fuel table with my entries and the query results based upon the Fuel table.

Fuel table.
Query of the fuel table.

Step 5: Save and close the query.

Since this query contains the ending odometer reading for our calculations, name it End-Reading when saving it. Then close the query.

Top of page

Step 6: Create the query to calculate the fuel economy.

  1. Click Create Query in Design View to open a new query.
  2. Add the Fuel table to the query just as you did in step 2: Add tables. But, do not close the Add Tables window.
  3. Add the End-Reading query to this query.
    1. Click the Query radio button to get the list of queries in the database.
    2. Selecting queries to add to another query.
    3. Click End-Reading.
    4. Click Add, and then click Close.

Top of page

Step 7: Add fields to the table at the bottom of the query.

Tables in this query.

We are going to calculate the fuel economy. To do this we need the FuelQuantity and distance traveled. Since the FuelQuantity we want to use is at the ending odometer reading, we will use the End-Reading query to get it. We will also use the Odometer field from the Fuel table and End-Reading query.

  1. Double-click FuelQuantity in the End-Reading query.
  2. Double-click Odometer in the End-Reading query.
  3. Double-click Odometer in the Fuel table.
Added fields to the query.

Top of page

Step 8: Enter the FuelID difference field.

We want the difference between the FuelID value of the Fuel table and FuelID value of the End-Reading query to equal one (1).

  1. Type "End-Reading".FuelID - Fuel.FuelID in the field to the right of the Odometer field of the Fuel Table.
    Type the numeral 1 (one) in the Criterion cell of this column.
  2. Typing in calculation of fields.
    Documentation caution.png When entering fields for these calculations, you must follow this format: table or query name followed by a period follow by the field name. For hyphenated or multiple-word names (table or query), use double quotes around the table or query name. The query will then add the rest of the double quotes as in the figure above.

    Use the arithmetical symbol between the two. More than one calculation can be done by using parentheses to group the arithmetical operations.

  3. Calculate the distance traveled:
    • Type "End-Reading".Odometer - Fuel.Odometer in the Field cell.
    • Type >0 in the Criterion cell.
    • Field for distance traveled calculations.
  4. Calculate fuel economy:
    Type ("End-Reading".Odometer - Fuel.Odometer)/"End-Reading".FuelQuantity in the Field in the next column to the right.
  5. Fuel economy calculation field.

Top of page

Step 9: Run the query and make some modification.

After we run the query to make sure it works correctly, we will hide all of the fields that we do not need.

  1. Click the Run Query icon in the Design Query toolbar. The results are below.
    Notice that not all of the last column label is visible because some of the labels are long. We can fix this problem by using an alias for many of the fields. The labels are replaced by their aliases.
  2. Result of running the fuel economy query.
  3. Add Aliases: Type in aliases as they are listed below.
  4. Query table with aliases added.
  5. Run the query again. The results are below.
  6. Query run with aliases.

    We really do not need the column showing the difference between the FuelID fields from the table and query. So, we will hide it. While it will not be visible, it will still be used in the calculations.

  7. Hide a field that does not need to be seen.
    Remove the check in the box of the Visible cell.
  8. Making a field invisible in a query run.
  9. Rerun the query.
  10. Query run with aliases.

Top of page

Step 10: Close, save, and name the query.

My suggestion for a name is Fuel Economy.

There are obviously other calculations that can be made in this query such as cost per distance traveled and how much of the cost belongs to each of the payments types.

Template:Documentation/Note

Top of page


Content on this page is licensed under the Creative Common Attribution 3.0 license (CC-BY).
Personal tools