..


Link-uri sponsorizate

Administreaza JOIN trei tabele

Articol scris de Max Bossi

În ghidul de la SQL am văzut cum a crea parteneriate între cele două tabele utilizând INNER JOIN. În acest articol vom vedea cum să facă acelaşi lucru ca managementul nu mai mult de două, ci trei tabele.

În realitate este o operaţie foarte simplă, care nu diferă de la o ÎNSCRIEŢI comun de 2 tabele.
Să facem un exemplu: cred că de o achiziţie ipotetic al unei baze de date simplu de e-commerce este format din trei tabele structurate după cum urmează:

utilizatori (utilizate pentru gestionarea de utilizatori inregistrati)

  • ute_id
  • ute_nome
  • ute_cognome
produse (utilizate pentru catalogul de produse de vânzare)
  • prod_id
  • prod_nome
  • prod_descrizione
  • prod_prezzo
achiziţiilor (utilizat pentru a înregistra achiziţii)
  • acq_id
  • acq_ute_id
  • acq_prod_id
  • acq_data
Acum, să presupunem că doriţi să preluaţi, utilizând o singură interogare, următoarele informaţii referitoare la achiziţiile făcute de un ID de utilizator dat (de exemplu, 1), informaţiile conţinute în trei tabele separate: numele complet al utilizatorului (utilizatorilor de masă), numele, descrierea şi preţul de cumpărare de produse (tabelul Produse) şi data de cumpărare (tabelul achiziţii). Cum? Simplu ... folosi doar o interogare ca aceasta:





 SELECT



  



 utenti.ute_nome, utenti.ute_cognome,



  



 prodotti.prod_nome, prodotti.prod_descrizione, prodotti.prod_prezzo,



  



 acquisti.acq_data







 De la utilizatori







 Achiziţiile INNER JOIN







 ON = utenti.ute_id acquisti.acq_ute_id







 Produse INNER JOIN







 ON = prodotti.prod_id acquisti.acq_prod_id







 UNDE utenti.ute_id = 1;

 

Aşa cum poate aţi observat comun de la clauza (care identifică primul tabel) este urmată de două INNER JOIN (care identifică al doilea şi al treilea tabel), însoţite de link-ul în vigoare la faptul că este "o punte de legătură" în scopul de a crea o legătură raţional între diferite tabele.

În cele din urmă am doar trebuie să vă reamintesc că, desigur, puteţi utiliza tehnica de data vazut de mai sus pentru interogări mai complexe, care implică 4, 5 sau mai multe mese ... de fapt, eu vă sfătuim să nu exagereze construcţia de astfel de cereri, deşi teoretic este posibil, este de multe ori muncit de gestionat în aplicarea în practică.

În aceeaşi categorie ...
E-Learning
MS Access (Avansat) MS Access (Avansat)
Aflaţi cum să creaţi şi să gestionaţi baze de date rapid şi uşor. Incepand de la 29 €.
MySQL (Curs) MySQL (Curs)
De gestionare a bazei de date open-source. De la 39 €.
SQL si baze de date (Curs) SQL si baze de date (Curs)
Crearea şi gestionarea bazelor de date relaţionale. De la 39 €.
Link-uri sponsorizate