SQL (Structured Query Language)
- Query SQL
Viene spiegato, con esempi pratici, l'uso delle query nel linguaggio SQL; sono presenti esercizi per verificare il proprio grado di preparazione

Indice articolo

  1. Introduzione alla SQL (Structured Query Language)
  2. Query SQL
  3. Espressioni e operatori condizionali
  4. Operatori di insieme
  5. Funzioni SQL
  6. Funzioni sulle potenze, logaritmi e radici in SQL
  7. Funzioni in SQL - Esercizi capitolo 3
  8. Clausole SQL
  9. Clausole SQL - Esercizi capitolo 4
  10. Join - combinazioni di tabelle in SQL
  11. Subquery SQL
  12. Manipolare dati con SQL
  13. Creare e mantenere le tabelle
  14. View e Indici
  15. SQL - Soluzioni esercizi cap. 1
  16. SQL - Soluzioni esercizi cap. 2
  17. SQL - Soluzioni esercizi cap. 3
  18. SQL - Soluzioni esercizi cap. 4
  19. SQL - Soluzioni esercizi cap. 5
  20. SQL - Soluzioni esercizi cap. 6

Capitolo 1

Introduzione alle query

Prime elementari regole

La sintassi del linguaggio SQL è abbastanza flessibile, sebbene ci siano delle regole da rispettare come in qualsiasi linguaggio di programmazione.

SELECT COGNOME, NOME
FROM PRESIDENTE
WHERE COGNOME = ‘Pertini’

In questo esempio tutti i caratteri, a parte ‘Pertini’, sono scritti in maiuscolo, ma non deve essere necessariamente così. Avremmo potuto anche scrivere così:

select cognome, nome
from presidente
where cognome = ‘Pertini’

si noti però che ‘Pertini’ è scritto sempre nello stesso modo, infatti i riferimenti ai contenuti di un database devono essere scritti con lo stesso tipo di caratteri in cui sono stati registrati.

Le parole chiave che abbiamo usato nella query sono:

  • SELECT
  • FROM
  • WHERE

‘cognome’ e ‘nome’ sono dei campi e ‘presidente’ è una tabella. Quindi il comando recita: seleziona visualizzandoli, i campi cognome e nome della tabella presidente la dove cognome = ‘Pertini’.

Esempio:

ASSEGNI
Assegno Beneficiari Importo Note
1 Computer Shop 500.000 Stampante
2 Assicurazioni ASSO 954.000 Assicurazioni automobili
3 SNAM 650.000 Riscaldamento casa
4 Supermarket GS 490.000 Alimentari
5 Scuola 490.000 Scuola di musica

 

con l’espressione:

select * from assegni;

si ottiene:

Assegno Beneficiari Importo Note
1 Computer Shop 500.000 Stampante
2 Assicurazioni ASSO 954.000 Assicurazioni automobili
3 SNAM 650.000 Riscaldamento casa
4 Supermarket GS 490.000 Alimentari
5 Scuola 490.000 Scuola di musica

 

L’asterisco (*) di select * indica al database di fornire tutte le colonne associate alla tabella specificata dalla clausola FROM.

Come termina una istruzione SQL:
In alcune implementazioni si usa il punto e virgola (;) in altre il punto e virgola o lo slash (/).

Selezionare le colonne o cambiare l’ordine di apparizione

Esempi:

con l’espressione:

select importo, assegno from assegni;

dalla tabella precedente si ottiene:

Importo Assegno
500.000 1
954.000 2
650.000 3
490.000 4
490.000 5

 

Clausola DISTINCT (query senza duplicati)

Esaminando il contenuto del campo Importo della tabella ASSEGNI, si potrà notare che il valore 490.000 appare due volte. Possiamo visualizzare tale colonna facendo comparire i valori ripetuti una sola volta:

select distinct Importo from ASSEGNI;

Importo
500.000
954.000
650.000
490.000

 

Altro esempio:

DOCENTI
Nome Cognome Materia
Lara Bianco Italiano
Lara Bianco Storia
Mario Guidi Diritto
Mario Guidi Economia
Anna Rossi Matematica

 

Con l’espressione:

SELECT DISTINCT NOME, COGNOME
FROM DOCENTI;

si ottiene:

Nome Cognome
Lara Bianco
Mario Guidi
Anna Rossi

 

ESERCIZI (capitolo 1)

  1. Le seguenti query non funzionano. Perché?
    1. Select * from persone
    2. Select *
    3. Select nome cognome FROM persone;
       
  2. Le seguenti istruzioni forniscono lo stesso risultato?

    SELECT * FROM PERSONE;
    select * from persone;
     
  3. Quale delle seguenti istruzioni SQL è corretta?
    1. select * from persone;
    2. select * from persone
      /
    3. select *
      from persone;
       
  4. Utilizzando la tabella sottostante scrivere una query per selezionare soltanto il contenuto delle colonne ETA e NOME.
    ANAGRAFICA
    NOME COGNOME ETA
    Giovanni
     
    Bruni
     
    62
    Antonio Rossi 43
    Mario Rossi 49
    Piero Bianchi 37
    Esmeralda Gnocca 31
     
     
  5. Dalla tabella sottostante estrapolare, senza ripetizioni, le squadre di calcio presenti.
    TIFOSERIA
    NOME COGNOME SQUADRA_APPARTENENZA
    ARTURO ROSSI LAZIO
    GIOVANNI ROSSI LAZIO
    MARIO ROSSI LAZIO
    MARIA MARCHETTI NAPOLI
    MARIA MARCHETTI ROMA

     
  6. La seguente query è giusta? e se sbagliata, perché?

    SELECT NOME, DISTINCT SQUADRA_APPARTENENZA
    FROM TIFOSERIA;
     
  7. La seguente query è giusta? e se sbagliata, perché?

    SELECT DISTINCT COGNOME, NOME
    FROM TIFOSERIA;

  8. La seguente query è giusta? e se sbagliata, perché?

    SELECT DISTINCT *
    FROM TIFOSERIA;

Soluzioni agli esercizi del Capitolo 1


Art Net - 6.2.2006

Tags:  SQL query
Previous   Pagina 2 / 20   Next
Commenti
15.12.2011 Alessia
È stata spiegato molto bene.
12.4.2012 Lorenzo
ma come si crea il database?
Aggiungi un Commento



captcha
Inserisci il codice visualizzato
Il commento sarà visualizzato dopo l'approvazione dello staff