Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Lezione Esempio Select

come fare la select tra due tabelle collegate da una tabella associativa

  • Login to see the comments

  • Be the first to like this

Lezione Esempio Select

  1. 1. Lezione SQL La Select con una tabella associativa in sqlite. Del Prof. Silvano Natalizi 1 dicembre 2008
  2. 2. Esempio registro voti
  3. 3. La mappatura delle entità <ul><li>Insegnante( idInsegnante ,nomeInsegnante) </li></ul><ul><li>Studente( idStudente ,nomeStudente, </li></ul><ul><li>annoScolastico,classe) </li></ul>
  4. 4. Tabella di associazione <ul><li>Verifica( idInsegnante , idStudente ,materia, </li></ul><ul><li>voto, data ) </li></ul>
  5. 5. Creazione delle tabelle <ul><li>Create table Insegnante (idInsegnante integer not null,nomeInsegnante text not null,primary key(idInsegnante); </li></ul><ul><li>Create table Studente(idStudente integer not null, nomeStudente text not null, anno text not null,classe text not null,primary key(idStudente); </li></ul>
  6. 6. Creazione della tabella associativa <ul><li>Create table Verifica(idInsegnante integer not null, idStudente integer not null, data text not null, voto integer not null, materia text not null, primary key(idInsegnante,idStudente,data); </li></ul>
  7. 7. Inserimento di dati campione <ul><li>Insert into Insegnante values (1,’Rossi’); </li></ul><ul><li>Insert into Insegnante values (2,’Bianchi’); </li></ul><ul><li>Insert into Insegnante values (3,’Caio’); </li></ul><ul><li>Insert into Studente values(1,’Qui’,’20072008’, ‘IVAL’); </li></ul><ul><li>Insert into Studente values(2,’Quo’,’20072008’,‘IVAL’); </li></ul><ul><li>Insert into Studente values(3,’Qua’,’20072008’,‘IVAL’); </li></ul>
  8. 8. Inserimento di dati nella tabella associativa <ul><li>Insert into Verifica values(1,1,’20071102’,5,’storia’); </li></ul><ul><li>Insert into Verifica values(1,2,’20071125’,6,’storia’); </li></ul><ul><li>Insert into Verifica values(2,1,’20071002’,7,’Elettronica’); </li></ul><ul><li>Insert into Verifica values(2,1,’20071202’,6,’Elettronica’); </li></ul><ul><li>Insert into Verifica values(2,3,’20071202’,5,’Elettronica’); </li></ul><ul><li>Insert into Verifica values(2,2,’20071204’,8,’Elettronica’); </li></ul>
  9. 9. La Select <ul><li>Voglio sapere il nome, il voto e la materia degli studenti insufficienti ? </li></ul><ul><li>Select nomeStudente,voto,materia </li></ul><ul><li>from Verifica, Studente </li></ul><ul><li>where Verifica.idStudente=Studente.idStudente </li></ul><ul><li>and voto < 6; </li></ul>
  10. 10. Quale è il risultato della select ?

×