Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 3 odgovora
  • 3.140 pregleda

Najnovija ↓

upit u bazu iz vise tabela 24.07.2014. u 10:56 · pre 149 meseci #1
pozz
imam bazu podataka it opreme
neke od tabela su mi
monitor sa kolonama monitor id, marka, model, sn
stampac stampac id, marka, model, sn
PC pc id, sn,

i spustaju se foreign keys od monitora i stampaca u tabelu PC

e sad ono sto meni treba je da generisem izvestaj gde cu moci da vidim SN PC, marku model stampaca, marku model monitora itd

da li je to moguce odraditi?
Re: upit u bazu iz vise tabela 24.07.2014. u 11:20 · pre 149 meseci #2
Postoji mnogo načina da se ovo izvede. Evo jednog.
Pošto tabele imaju polje "sn" pretpoostavljam da u njima čuvaš podatke o svakom pojedinačnom uređaju, a ne njegovom tipu. U tom slučaju možeš svakoj ovoj tabeli da dodaš polje PCId u kome bi upisivao Id PC-a kome taj uređaj ili komponenta pripada. U slučaju da uređaj ne pripada niti jednom PC-u, njegova vrednost može da bude npr. "0", "NULL" ili neki rezervisani broj.
Pošto će se ovo polje nalaziti u JOIN i WHERE klauzulama, možda je najbolje da u tabelu PC uneseš "Nepostojeći PC" pa da njegov Id dodeljuješ uređajima koji nisu dodeljeni ni jednom PC-u. Na ovaj način možeš da podigneš relacije između tabela i time učiniš bazu stabilnijom i bržom.
Pozdrav
Re: upit u bazu iz vise tabela 24.07.2014. u 11:47 · pre 149 meseci #3
Ne znam zašto je teško napraviti create table naredbe i insert test podataka, kada se postavljaju ovakva pitanja. Dakle uz mnogo pretpostavki i bez testnih podataka da bih testirao upit evo, ad-hoc rešenje

Code (sql):

SELECT p.sn, m.marka, m.model, s.marka, s.model
FROM pc p
LEFT OUTER JOIN monitor m ON p.monitor_id = m.id
LEFT OUTER JOIN stampac s ON p.stampac_id = s.id
 
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme