|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
Query SQL
E' giusta secondo voi la mia soluzione ?
Problema Si consideri il seguente schema relazionale (le chiavi primarie sono sottolineate): VENDITA(CodVend,CodCli,CodProd,Qta) VENDITORE(Codice,Nome, Città) CLIENTE(CodiceCli,NomeCli,CittàCli) Domanda determinare il venditore di Verona che ha venduto la maggiore quantità complessiva di prodotti nella base di dati. Soluzione Codice:
SELECT CodVend FROM
SELECT CodVend FROM VENDITA WHERE
CodVend = (SELECT Codice FROM VENDITORE WHERE Città = 'Verona')
GROUP BY CodVend MAX(COUNT(*))
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2005
Città: Resana - TV
Messaggi: 960
|
ma join e having te li devono ancora insegnare?
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
|
non conviene annidare troppe select, rischi di rallentare l'esecuzione della query
SELECT a.codice, b.qta from venditore a, vendita b where a.codice = b.codvend and b.qta = max(b.qta)
__________________
Il sole è giallo |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Apr 2005
Città: Resana - TV
Messaggi: 960
|
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
|
Hai perfettamente ragione, lapsus mio. Si risolve in vari modi, ad esempio aggiungendo un'altra select nella where (where qta = select max(qta)...() o utilizzando il raggruppamento
__________________
Il sole è giallo |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:30.




















