|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Bannato
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2688
|
[DB] urgentissimo domanda su query
Allora vi prego ditemi come si fà...domani esame...e mi manca l'ultima parte sulle query...poi domani mattina leggo anche il capitolo per bene ma intanto se potete illuminatemi.
Ho un DB che rappresenta degli appartamenti strutrato con le seguenti tabelle: TABELLA: {ATRIBUTO1; ATRIBUTO2; ATRIBUTO3} così indico una tabella e i suoi campi PROPRIETARIO: {NOME; COGNOME; INDIRIZZO} APPARTAMENTO: {ID-APPARTAMENTO; METRATURA} PIANO: {NUMERO PIANO} BOLLETTA: {ID-BOLLETTA; COSTO SPESE} APPARTENENZA: {NOME; COGNOME; ID-APPARTAMENTO; GESTORE(SI O NO)} UBICAZIONE: {NUMERO PIANO; ID-APPARTAMENTO} SPESE:{APPARTAMENTO; BOLLETTA} Spero che sia abbastanza chiaro. Per esempio la tabella APPARTENENZA contiene il campo GESTORE che è booleano: se è vero il proprietario identificato dalla key NOME e COGNOME è anche il gestore dell'appartamento e deve ricevere lui le bollette. Se voglio fare una query che estrae il costo delle bollette per ogni proprietario che è anche gestore e l'indirizzo a cui spedirle cosa dovrei fare? Credo che dovrei UNIRE in qualche modo 3 tabelle che sono: APPARTENENZA, SPESE e BOLLETTA come per creare una nuova tabella che le contenga tutte e 3 (credo che posso unirle perche APPARTENENZA e SPESE hanno il campo ID-APPARTAMENTO in comune e SPESE e BOLLETTA hanno il campo ID-BOLLETTA in comune: una volta che il dbms vede questa nuova tabellona devo selezionare tutte le righe aventi il campo GESTORE impostato su TRUE e restituire i campi: COSTO SPESE e INDIRIZZO. Vi prego ditemi come si fà....la logica credo di averla capito ma per domani alle 14 devo aver imparato anche la sintassi e ho pochissimo tempo. Vi ringrazio tutti Andrea |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Aug 2006
Messaggi: 365
|
Codice:
SELECT p.nome, p.cognome, p.indirizzo, b.costo FROM bolletta b, spese s, proprietario p, appartenenza a WHERE b.id-bolletta=s.bolletta AND s.appartamento=a.id-appartamento AND a.nome=p.nome AND a.cognome=p.cognome AND a.gestore='si' |
|
|
|
|
|
#3 |
|
Bannato
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2688
|
oddio ti venero...gli ho dato una rapida occhiata e mi pare abbastanza facile...la logica era giusta quella che avevo detto io?
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Aug 2006
Messaggi: 365
|
si
quando hai individuato il percorso chiave esterna->chiave primaria per arrivare ai dati che ti servono basta che aggiungi condizioni nel where per linkare tutto |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:52.


















