Query
In informatica, una query o interrogazione è un comando scritto dall'utente per ricavare informazioni riguardanti il contenuto di una base di dati. La base di dati è generalmente strutturata secondo il modello relazionale, che permette di compiere determinate operazioni sui dati (come selezione, inserimento, cancellazione o aggiornamento). Solitamente, le interrogazioni vengono scritte in un linguaggio di interrogazione interpretato, come SQL, e si interfacciano al sistema di gestione della base dati.
Il risultato di una query è oggetto di studio dell'algebra relazionale.
Descrizione
[modifica | modifica wikitesto]Esistono svariati tipi di sistemi di gestione, detti DBMS (per es. MySQL, Oracle, Interbase, Postgres), che hanno sviluppato una loro specifica sintassi; ma come standard di riferimento hanno tutti l'SQL ANSI.
Una query di selezione inizia classicamente con il comando SELECT, che apre una stringa di interrogazione sul database; il simbolo * (all) seleziona tutti i campi della tabella; FROM dichiara l'origine dei dati (nell'esempio sottostante, la tabella STATI).
Una semplice query SQL di selezione può essere la seguente:
select * from STATI
Si possono aggiungere criteri restrittivi di selezione (filtri) introdotti abitualmente attraverso la clausola aggiuntiva WHERE. Vediamo un esempio:
select * from STATI where CONTINENTE = "Europa";
In questo caso la query restituirà, tra tutti i record, solo quelli che avranno nel campo CONTINENTE il valore "Europa". Se al posto dell'operatore logico di confronto = si usa invece <> verranno selezionati tutti i record diversi dal valore immesso.
Si possono inoltre combinare più filtri di ricerca, uniti dall'operatore logico and e or, ottenendo una condizione per la quale una query deve essere valida oppure combinare più query insieme tramite la clausola Join.
Le operazioni tipiche di query che saranno possibili su una tabella, precedentemente definita e creata nella sua struttura tramite il Data Definition Language (DDL), sono quelle riassunte nell'acronimo CRUD, ovvero C creazione o inserimento dei record (INSERT), R lettura (SELECT), U aggiornamento (UPDATE), D cancellazione (DELETE).
Tipi di query
[modifica | modifica wikitesto]Esistono diversi tipi di query:
- Query di selezione: è possibile estrarre i dati (SELECT) da una o più tabelle e visualizzarli in una nuova tabella.
- Query di accodamento: consente di aggiungere (INSERT) a tabelle già esistenti un gruppo di record in base a dei criteri specifici.
- Query di aggiornamento: consente di modificare (UPDATE) il valore di uno o più campi in corrispondenza di un intervallo selezionato di records esistenti.
- Query di eliminazione: consente di cancellare (DELETE) uno o più record dipendentemente dai criteri inseriti nella creazione della query. [1]
- Query a campi incrociati: permette di "incrociare" i campi di più tabelle in modo tale da ottenere una matrice in cui le righe corrispondono normalmente a campi di tipo descrittivo e riepilogativo, mentre le colonne corrispondono a totali o conteggi. Vengono chiamate anche query pivot, poiché i dati che risultano alla fine della creazione sono simili alle tabelle pivot di un foglio di calcolo.
- Query di creazione tabella: se lo si desidera, le righe prodotte da una query possono anche alimentare i record di una nuova tabella mediante una query di creazione tabella, facendo sempre riferimento alla scheda Struttura, gruppo Tipo di query. [2]
Esistono inoltre le query annidate dove il filtro della query è dato da un'altra query.
Esistono anche le query di raggruppamento, tramite cui è possibile raggruppare righe in base ad uno o più campi. in questo caso, ogni gruppo è costituito da righe aventi dati uguali nel campo indicato (detto appunto campo raggruppato) ed occuperà una sola riga dell'elenco prodotto dalla query. Le principali funzioni native di Access da applicare ad ogni raggruppamento sono quelle di somma, conteggio, media, minimo e massimo.
Altri ambiti
[modifica | modifica wikitesto]Il termine query è anche usato per indicare una conversazione privata tra due utenti di una chat, come ad esempio in IRC.
Note
[modifica | modifica wikitesto]- ^ Introduzione alle query, su support.microsoft.com.
- ^ TIPOLOGIE DI QUERY, su syrusindustry.com.
Voci correlate
[modifica | modifica wikitesto]- Base di dati
- SQL
- Linguaggio di interrogazione
- Linguaggio di manipolazione dei dati
- Query annidate
- Information retrieval
Collegamenti esterni
[modifica | modifica wikitesto]- query, su Vocabolario Treccani, Istituto dell'Enciclopedia Italiana.
- query, su sapere.it, De Agostini.
- query, in Enciclopedia della Matematica, Istituto dell'Enciclopedia Italiana, 2013.
- (EN) Denis Howe, query, in Free On-line Dictionary of Computing. Disponibile con licenza GFDL