Anteprima
Vedrai una selezione di 8 pagine su 34
Gestione dati e archivi - progettazione ER e SQL Pag. 1 Gestione dati e archivi - progettazione ER e SQL Pag. 2
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Gestione dati e archivi - progettazione ER e SQL Pag. 6
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Gestione dati e archivi - progettazione ER e SQL Pag. 11
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Gestione dati e archivi - progettazione ER e SQL Pag. 16
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Gestione dati e archivi - progettazione ER e SQL Pag. 21
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Gestione dati e archivi - progettazione ER e SQL Pag. 26
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Gestione dati e archivi - progettazione ER e SQL Pag. 31
1 su 34
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

SQL

Create table Emp (eid integer, ename char(10), age integer, salary real, primary key (eid))

Create table Works (eid integer, did integer, pct_time integer, primary key (eid, did), foreign key (did) references Dept, foreign key (eid) references Emp, on delete cascade)

Create table Dept (did integer, budget real, managerid integer, primary key (did), foreign key (managerid) references Emp.eid, on delete set null)

Create table Dept (did integer, budget real, managerid integer not null, primary key (did), foreign key (managerid) references Emp, on delete set null)

Select E.ename, E.age From Emp E, works W Where E.eid=W.eid and W.did=2


SELECT E.ename, E.age
FROM Emp E, works W1, Works W2
WHERE E.eid=W1.eid AND W1.did='Hardware' AND E.eid=W2.eid AND W2.did='Software'


SELECT piloti.nome
FROM piloti, partenze
WHERE partenze.pilota=piloti.id AND partenze.data<='2004-04-25'


SELECT aerei.id
FROM aerei
WHERE aerei.capienza > [valore]

  1. di 100che partono il 17 maggio '04" 16
  2. SQLsoluzione:select aerei.idfrom aerei, partenzewhere aerei.id=partenze.aereo andaerei.capienza>100 andpartenze.data=17/5/04 17
  3. SQLsempre in riferimento agli stessi schemirelazionali, esprimere in SQL la seguenteinterrogazione:"Trovare tutti i nomi dei piloti che partonodopo il 17 maggio '04 con un aereo aventecapienza maggiore di 100 posti" 18
  4. SQLsoluzione:select piloti.nomefrom piloti, aerei, partenzewhere piloti.id=partenze.pilota andaerei.id=partenze.aereo andpartenze.data>17/5/04 andaerei.capienza>100 19
  5. SQLTrovare l'età media dei piloti che pilotanoaerei che partono entro il 25 aprile '04select avg(piloti.età) as etàmediafrom piloti, partenzewhere piloti.id=partenze.pilota andpartenze.data<25/4/04 20
  6. Progettazione ER
  7. Si considerino le seguenti informazioni riguardanti unDB universitario:i professori sono univocamente identificati dalcodice fiscale, inoltre posseggono un nome,

Età, grado ed attività di ricerca i progetti sono identificati da un numero, inoltre possiedono uno sponsor, data d'inizio, data di fine e budget. Gli studenti laureati sono univocamente identificati dal codice fiscale, nome, età e corso di studi. Inoltre...

21Progettazione ER

Ogni progetto è gestito da un professore. Ad ogni progetto lavorano uno o più professori. I professori possono gestire e/o lavorare a più progetti. Ad ogni progetto lavorano uno o più studenti. Quando uno studente lavora ad un progetto, un professore supervisiona lo studente. E poi...

22Progettazione ER

I dipartimenti sono identificati da un numero, inoltre hanno un nome ed un ufficio principale. Ogni dipartimento è gestito da un professore. I professori lavorano in uno o più dipartimenti e, per ogni dip., viene registrata la percentuale di tempo di lavoro. Gli studenti hanno un dipartimento di appartenenza. Ogni studente ha uno studente più anziano che lo aiuta.

  • nella scelta dei corsi 23Progettazione ER iniziosponsor finepidetà grado budgetcf ricerca (1,N) proglavoroprof(1,N) (1,1)gestionegestlavoro LavoroProg.(1,1) superpct (1,1) aiutodip (1,1) studenteAppart. nomeUff.N° nome cf età corso 24SQL
  • Si consideri il seguente schema di database:
  • Studente(snum, nome, età, anno)
  • Classe(nome, aula, ora, pid)
  • Iscritto(snum, nome)
  • Professore(pid, nome)
  • 25SQLtrovare nome ed età degli studenti iscritti alcorso di paleontologia
  • Select S.nome, S.etàFrom studente S, iscritto IWhere S.snum=I.snumand I.nome=‘paleontologia’
  • 26SQLIn alternativa:Select studente.nome, studente.etàFrom studente SWhere S.snum in (select I.snumfrom Iwhere I.nome=‘paleontologia’)
  • 27SQLTrovare i nomi di tutti gli studenti del primoanno iscritti ad un corso tenuto dal prof.RossiSelect distinct S.nomeFrom studente S, corso C, iscritto I, professore PWhere S.snum=I.snum and I.nome=C.nome andC.pid=P.pid and

P.nome=‘Rossi’ and S.anno=128

SQL

Oppure…

Select distinct S.nome

From studente S

Where S.anno=1 and S.snum in (select I.snum

from iscritto I

where I.nome in (select C.nome

from corso C

where C.pid in (select P.pid

from professore P

where P.nome = ‘Rossi’)))

29

SQL

Trovare l’età media degli studenti, suddivisi

per anno

Select anno, avg(età)

From studente S

Group by anno

30

SQL

Trovare gli studenti che non sono iscritti ad

alcun corso

Select S.nome

From studente S

Where S.snum not in (select I.snum

from iscritto I)

31

SQL

Trovare l’età degli studenti più anziani che

sono iscritti al secondo anno oppure che

seguono un corso tenuto dal prof. Rossi

Select max(S.age)

From studente S

Where S.anno=2 or S.snum in (select I.snum

from iscritto I, corso C, Professore P

where I.nome=C.nome and C.pid=P.pid and

P.nome=‘Rossi’)

32

Dettagli
Publisher
A.A. 2012-2013
34 pagine
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Menzo di informazioni apprese con la frequenza delle lezioni di Gestione dati e archivi e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi dell' Insubria o del prof Gentile Claudio.