soluzioni 23/07 Clicca QUI per vedere il messaggio nel forum |
dvr |
Ecco le mie soluzioni come le ho fatte nel compito...
schema er:
http://tinyurl.com/schemaer
normalizzazione:
http://tinyurl.com/6mmwcc
http://tinyurl.com/64zrb8
C'è solo lo schema er non ristrutturato, senza ristrutturazione e schema relazionale, i quali si ricavano facilmente.
Qui i vincoli dovrebbero essere:
1) se il manager dirige una filiale => manager.master = 'economia' AND data odierna - dipendente.data_assunzione >= 5 anni
2) stesso concetto applicato all' impiegato
forse ce ne sono altri, ora non ricordo :(, sicuramente in fase di ristrutturazione ne appaiono altri in corrispondenza di dipendente
E' simile a quello spiegato dal prof, unica cosa, da quanto mi ricordo, la relazione tra cliente e fondo nel mio passa attraverso il conto corrente mentre in quella del prof era diretta. mmm, lui non aveva fatto neanche la relazione ternaria tra cliente, cliente (cointestatario) e conto.
Ah, per la cronaca, ho preso I+. (qui ho corretto un paio di errori, sul compito inoltre ho saltato due query e una l' ho pure sbagliata in parte)
Sono benvenute soluzioni :) ora vedo l' sql... |
dvr |
vista la grande richiesta via PM ecco le query sql
1)
SELECT aula
FROM orarilez ol, corsi c, corsil cl
WHERE c.anno = '2' AND
c.semestre = '1' AND
cl.nome = 'informatica' AND
c.codC=ol.codC AND
c.codL=cl.codL
2)
SELECT COUNT(*) AS tot_iscrizioni_esame, codS, codL
FROM iscrizioniEsami
GROUP BY codS, codL
ok, queste erano le più facili... però al compito una l' ho sbagliata maledizione :(. ora vedo le altre, un pò più difficult...
Nessun' altro che contribuisce? ho fatto tutto perfetto, possibile? |
dvr |
3)
SELECT cods, COUNT(*)
FROM (studenti NATURAL JOIN esitiEsami) as SE
WHERE COUNT(*) =
(SELECT COUNT(*)
FROM corsi c
WHERE c.codL = SE.codL
)
AND
codS NOT IN ANY
(SELECT cods
FROM testiLaurea
)
GROUP BY codS |
dvr |
La quarta query non mi viene, o meglio viene un casino... è brutta proprio da vedersi :( il prof se l' era sbrigata in un attimo.
Speriamo non me la chieda all' orale.
per comodità, visto che il forum non supporta le tabulazioni:
http://paste2.org/p/528451 |
holylaw |
code:
Per le
tabulazioni esiste il tag [CODE]
|
dvr |
holylaw: giusto... sfrutto subito:
4)
code:
select conds, sum(durata) as tot_ore
from orarilez ol,
corsi c,
corsil cl
where cl.nome = 'informatica' and
c.anno = '3' and
cl.codl = c.codc and
c.codc = ol.codl
having sum(durata) > 8
domande:
1)è giusta?
2)perchè la stavo risolvendo con 2 query interne correlate?
2)perchè venerdì non ho studiato? maledizione, mi basterebbe un giorno in più per essere super-preparato :(:(:( ora so fare TUTTO
:teach:
(ehm, senza esagerare...)
ricoreggendo ho visto d'aver fatto parecchi errori allo scritto... chissà come il prof ne terrà conto all' orale.. |
Asso |
Manca un group by codc
Finalmente l'ho passato :D |
|
|
|