Homepage  Il progetto dsy.it è l'unofficial support site dei corsi di laurea del Dipartimento di Scienze dell'Informazione e del Dipartimento di Informatica e Comunicazione della Statale di Milano. E' un servizio degli studenti per gli studenti, curato in modo no-profit da un gruppo di essi. I nostri servizi comprendono aree di discussione per ogni Corso di Laurea, un'area download per lo scambio file, una raccolta di link e un motore di ricerca, il supporto agli studenti lavoratori, il forum hosting per Professori e studenti, i blog, e molto altro...
In questa sezione è indicizzato in textonly il contenuto del nostro forum


.dsy:it. .dsy:it. Archive > Didattica > Corsi A - F > Basi di dati ~ comunicazione digitale
 
dubbio sql
Clicca QUI per vedere il messaggio nel forum
Mr.O
qlc sa dirmi se questa interrogazione :

code:
select Docente, count(*) from Corso, Lezione, Periodo where Corso.CodC=Lezione.CodC and Lezione.CodP=Corso.CodP and (Giorno=’Lunedì’ or Giorno=’Martedì’) and Aula=’Alfa’ group by Docente having count (distinct Corso.CodC)=2;


la posso scrivere anche cosi' :

code:
select Docente, count(*) from Corso natural join Lezione natural join Periodo where (Giorno=’Lunedì’ or Giorno=’Martedì’) and Aula=’Alfa’ group by Docente having count (distinct Corso.CodC)=2;

Ste.dv
Se ricordo bene gli schemi delle relazioni Corso, Lezione e Periodo sì: è lo stesso.
In generale devi solo assicurarti che non vi siano attributi omonimi oltre ai riferimenti (in questo caso CodC e CodP) che legano le relazioni.

Mr.O
questo e' lo schema

code:
Corso(CodC, Nomenn, Docentenn) Lezione(CodC fk->Corso.CodC, CodP fk->Periodo.CodP,Aulann,Edificionn) Periodo(CodP, Giornonn, OraInn)

Ste.dv
Sì, confermo.
Il natural join realizza esattamente la stessa operazione.

Powered by: vbHome (lite) v4.1 and vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento |Licenze | Thanks | Syndacate