sabato 20 dicembre 2008

Volevo rendervi partecipi del mio problema...

Il compito dura 2ore, bisogna fare il mondo in queste due ore... stamattina ho corretto le query. Ho impiegato 32 min (cronometrati con il cell.) a fare questa:

SELECT d.titolo,c.nomeCantante
FROM disco d, cantante c, contiene ct
WHERE d.nroserie=ct.nroseriedisco AND ct.codicereg=c.codicereg AND d.nroserie IN (SELECT d.nroserie
FROM disco d, contiene ct
WHERE d.nroserie=ct.nroseriedisco
GROUP BY d.nroserie
HAVING COUNT(*)=(SELECT MAX(temp.tot)
FROM ( SELECT d.nroserie,COUNT(ct.codicereg) as tot
FROM disco d, contiene ct
WHERE d.nroserie=ct.nroseriedisco
GROUP BY d.nroserie) as temp)
)
GROUP BY c.nomecantante


Non vi sto a riportare lo schema logico incomprensibile, ma in pratica bisognava trovare il nonno del cantante fratello dello zio con età maggiore di quella di tutti i contadini che hanno munto una mucca che in un anno ha fatto più litri di latte di quanti ne ha bevuti lo stesso nonno che bisognava trovare.

Ora, la domanda che vi pongo è: secondo voi sono spacciato perchè non riuscirò mai a finire quell'esame in tempo?!?!?

Grazie a tutti quelli che sapranno darmi una parola di conforto.

Vi voglio bene. Costa.

P.S.: ogni riferimento a persone, cose ed esami è puramente casuale.

3 commenti:

Matteo ha detto...

Be ma scusa... se hai 2 ore per il compito e ci hai messo 32 minuti per fare la query hai ancora 1 ora e 28 minuti per controllarla O_o

Ferre ha detto...

Ehi guarda che è colpa tua che non riesci a scrivere di getto un E-R subito in bella e che ci impieghi mezz'ora a fare una query senza neppure poterla provare...=O

AxelCorri ha detto...

ma non bastava fare

SELECT d.titolo,c.nomeCantante
FROM disco d, cantante c, contiene ct
WHERE d.nroserie=ct.nroseriedisco AND ct.codicereg=c.codicereg

???

poi uno guardava la tabella e cercava quello di cui aveva bisogno... =D