Progettazione: entità - attributo - chiave primaria
Interrogazione: select - from - where - *

Lezione 1

Problema

Si vuole tenere traccia di tutti gli insegnanti che lavorano in una certa scuola e per ciascun docente si vuole tenere traccia della materia (o delle materie) che insegnano.

Schema Concettuale: ER

Layer 1 INSEGNAMENTO docente materia

Nota.

L'entità insegnamento ha gli attributi docente e materia.

Schema logico: relazionale

insegnamento (id, docente, materia)

Nota.

Nello schema relazionale introduciamo la chiave primaria: id.

Nota.

La chiave primaria deve essere sempre sottolineata.

Esempio di istanza

id docente materia
1 Ursomando Informatica
2 Ursomando Sistemi
3 Tizio Italiano
4 Caio Informatica
5 Sempronio Inglese
6 Tizio Storia

Nota.

La chiave primaria ha il compito di rendere ogni riga differente da tutte le altre.

Interrogazione - 1

Selezionare tutti i docenti che insegnano "Informatica".

select docente
from insegnamento
where materia='Informatica'
docente
Ursomando
Caio

Interrogazione - 2

Selezionare tutte le materie insegnate da "Tizio".

select materia
from insegnamento
where docente='Tizio'
materia
Italiano
Storia

Interrogazione - 3

Selezionare nome e materia insegnata da tutti i docenti che insegnano "Inglese".

select materia, docente
from insegnamento
where materia = 'Inglese'
materia docente
Inglese Sempronio

Interrogazione - 4

Selezionare tutti i dati di tutti gli insegnati.

select *
from insegnamento
id docente materia
1 Ursomando Informatica
2 Ursomando Sistemi
3 Tizio Italiano
4 Caio Informatica
5 Sempronio Inglese
6 Tizio Storia

Interrogazione - 5

Selezionare l’id di tutte le righe relative all'insegnamento della "Matematica".

select id
from insegnamento
where materia = 'Matematica'
id

Interrogazione - 6

Ottenere un elenco di tutti gli insegnanti.

select docente
from insegnamento
docente
Ursomando
Ursomando
Tizio
Caio
Sempronio
Tizio

Challenge

Esempio di istanza

id docente materia
1 Woolf Italiano
2 D’Annunzio Italiano
3 D’Annunzio Storia
4 Hitler Storia
5 Hitler Informatica
6 Einstein Matematica
7 Einstein Informatica
8 Woolf Inglese

Challenge - 1

Qual è il risultato di questa interrogazione?

select docente
from insegnamento
where materia = 'Informatica'

Challenge - 2

Qual è il risultato di questa interrogazione?

select materia
from insegnamento
where docente = 'Tizio'

Challenge - 3

Qual è il risultato di questa interrogazione?

select docente, materia
from insegnamento
where materia = 'Inglese'

Challenge - 4

Qual è il risultato di questa interrogazione?

select *
from insegnamento

Challenge - 5

Qual è il risultato di questa interrogazione?

select *
from insegnamento
where materia = 'Matematica'

Challenge - 6

Qual è il risultato di questa interrogazione?

select *
from insegnamento
where id = 5

Challenge - 7

Qual è il risultato di questa interrogazione?

select docente, id
from insegnamento
where docente = 'Woolf'

Challenge - 8

Qual è il risultato di questa interrogazione?

select materia, docente
from insegnamento
where materia = 'Italiano'

Challenge - 9

Qual è l’interrogazione che dà questo risultato?

id docente materia
6 Einstein Matematica

Challenge - 10

Qual è l’interrogazione che dà questo risultato?

id materia
5 Informatica
7 Informatica

Challenge - 11

Qual è l’interrogazione che dà questo risultato?

docente
Woolf
D’Annunzio
D’Annunzio
Hitler
Hitler
Einstein
Einstein
Woolf

Challenge - 12

Qual è l’interrogazione che dà questo risultato?

id materia
6 Matematica