SQL (Structured Query Language)

Un corso completo sul linguaggio SQL (Structured Query Language): definizioni, esempi ed esercizi

SQL - Soluzioni esercizi cap. 2

1)

SELECT COGNOME

FROM AMICI

WHERE COGNOME LIKE ‘M%’ ;

Alcuni DBMS, come Access, implementano ‘*’ invece ‘%’

2)

SELECT COGNOME, NOME

FROM AMICI

WHERE NOME = ‘MARIA’

AND PR = ‘BG’;

3)

NOME COGNOME
MARIA ROSSI
MARIA VERDI
ALBERTO MAZZA

4) La query non estrapola nessun nominativo, in quanto nessuna persona che si chiama Maria fa di

cognome Mazza;

5)

BETWEEN 10 AND 30

6)

SELECT NOME

FROM PERSONE

WHERE CONIUGE IS NOT NULL

AND SESSO = ‘F’;

7)

SELECT NOME

FROM PERSONE

WHERE NOME LIKE ‘A%O’;

Bisogna ricordare che il corrispondente carattere ‘%’ implementato da Access è ‘*’.

8)

SELECT NOME

FROM PERSONE

WHERE NOME LIKE ‘_ _ _O %’;

Bisogna ricordare che il corrispondente carattere ‘_’ implementato da Access è ‘?’.

9)

SELECT *, (PrezzoIngrosso * 1.5) PrezzoVendita

FROM PREZZI;

Bisogna ricordare che l’assegnazione del nome alla colonna che conterrà i nuovi prezzi, non è possibile utilizzando Access 8.0.

10) Le espressioni che possiamo utilizzare sono ameno due:

SELECT – PrezzoIngrossoFROM PREZZI; SELECT (PrezzoIngrosso * –1)FROM PREZZI;

11)

SELECT *

FROM CACCIATORI

UNION

SELECT *

FROM PESCATORI

UNION

SELECT *

FROM SCALATORI;

12)

SELECT *

FROM CACCIATORI

MINUS

SELECT *

FROM SCALATORI;

Bisogna ricordare che l’operatore MINUS non è implementato da Access 8.0

13)

SELECT *

FROM SCALATORI

MINUS

SELECT *

FROM CACCIATORI;

14)

SELECT *

FROM PESCATORI

INTERSECT

SELECT *

FROM CACCIATORI;

Bisogna ricordare che l’operatore INTERSECT non è implementato da Access 8.0

15) Si.

16)

SELECT *

FROM CACCIATORI

WHERE NOME LIKE ‘ %A%I’

UNION

SELECT *

FROM PESCATORI

WHERE NOME LIKE ‘ %A%I’

UNION

SELECT *

FROM SCALATORI

WHERE NOME LIKE ‘ %A%I’;

Bisogna ricordare che il corrispondente carattere ‘ %’ implementato da Access è ‘*’.

17)

SELECT *

FROM CACCIATORI

WHERE NOME LIKE ‘ %A %’ OR NOME LIKE ‘ %I’

UNION

SELECT *

FROM PESCATORI

WHERE NOME LIKE ‘ %A%’ OR NOME LIKE ‘ %I’

UNION

SELECT *

FROM SCALATORI

WHERE NOME LIKE ‘ %A%’ OR NOME LIKE ‘ %I’

Autore: Art Net

Condividi questo articolo su

12 Commenti

  1. Ho imparato alcune cose buone qui. Certamente merita il bookmarking per la rivisitazione.

    Mi chiedo quanti sforzi hai impostato per creare questo tipo di fantastico sito informativo.

    Rispondi al Commento
  2. guida molto interessante grazie se ci fossero anche le istruzioni per creare la tabella sarebbe completa secondo me

    Rispondi al Commento
  3. Grazie per la guida. Semplice, interessante ed utile.
    Vorremmo segnalare due cose. Un errore ed un dubbio.
    Errore:
    SELECT DIVISIONE, AVG(STIPENDIO)
    FROM DIPENDENTI
    HAVING AVG(STIPENDIO) > 2200000;

    manca la “group by DIVISIONE” prima della HAVING.

    Di conseguenza il dubbio sul punto 6.
    HAVING non è necessario che venga posta dopo la clausola GROUP BY.
    Sicuri?

    Rispondi al Commento
  4. Guida Molto utile, segnalo un errore nella query 9, capitolo 2, delle soluzioni:
    PrezzoIngrosso è moltiplicato * 1,5 ma si chiedeva un aumento del 15%, ciò significa moltiplicare * 1,15

    Rispondi al Commento
  5. Veramente complimenti, una guida dettagliata, semplice e adatta a tutti 🙂

    FortyZone

    Rispondi al Commento
  6. Davvero complimenti ragazzi. La prima guida che per chi parte da zero è manna dal cielo…PERFETTA!!

    Rispondi al Commento
  7. nel punto 8 la soluzione non dovrebbe essere con HAVING MIN(IMPORTO) > 400 000; cioè: SELECT BENEFICIARI FROM ASSEGNI GROUP BY BENEFICIARIO HAVING MIN(IMPORTO) > 400 000;

    Rispondi al Commento
  8. un ottimo Manuale unico errore (se vogliamo chiamarlo cosi) i tipi di dati Char(5) number(5,2) cosa sono e come si usano

    Rispondi al Commento
  9. Complimenti ottimo sito! fatto davvero bene. Grazie!

    Rispondi al Commento

Invia commento

Il tuo indirizzo email non sarà pubblicato.