Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Da li se ovo moze povezati?

[es] :: MySQL :: Da li se ovo moze povezati?

[ Pregleda: 1983 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

define

Član broj: 41934
Poruke: 288
213.244.197.*



Profil

icon Da li se ovo moze povezati?18.03.2006. u 10:45 - pre 220 meseci
Imam jednu tabelu gde se nalaze automobili primera radi izgleda ovako
(auto)
+-------------------+--------+
| model | autoid |
+-------------------+--------+
| Golf | 1 |
+-------------------+--------+

druga tabela je sa karakteristikama

+-------+-----------------+
| karid | naziv |
+-------+-----------------+
| 1 | ABS |
| 2 | Air bag |
| 3 | Alu felne |
+-------+-----------------+

treca je mesto gde se unosi id od katakteristika i id automobila
(autokar)
+-----------+-------+--------+
| autokarid | karid | autoid |
+-----------+-------+--------+
| 1 | 1 | 1 |
| 2 | 2 | 1 |
| 3 | 3 | 1 |
+-----------+-------+--------+

Ono sto je meni bitno je da vidim da li postoji neki nacin da povezem tabelu automobila i ove zadnje tabele po autoid-u, ali ono sto mi je bitno je da se to izvrsi u jendom kveriju. Cini mi se da u Accessu ima opcija da mogu da izvrsim rotiranje ove druge tabele tako da ovi elementi iz kolone autokarid mogu postati polja (1,2,3) koja bih mogao da povezem sa tabelom auto tako da dobijem novu tabelu koja bi izgledala

autoid,model,1,2,3
u zavisnosti od toga koliko ima karakteristika za pojedini automobil, tako da bi mozda neki drugi automobil imao
autoid,model,1 ili autoid,model,2,3
Da li je ovo moguce?
 
Odgovor na temu

SmilieBG
Aleksandar Skodric
NL

Član broj: 13094
Poruke: 1821
*.speed.planet.nl.



+3 Profil

icon Re: Da li se ovo moze povezati?18.03.2006. u 14:03 - pre 220 meseci
moguce je :)

Samo je prvo pitanje, imas li i ostalih tabela?

U principu, autoid je osnova. I dokle god imas autoid u i drugim tabelama (karakteristike, motor, boja, godiste), mozes da povezujes...

Code:

select * from auto a, karakteristike k, motor m where a.id = 1 and a.id = k.autoid and a.id = m.autoid;


Poz,
Sale
=========
Uporedi cene i karakteristike za vise od 10.000 proizvoda, izmedju ostalog:
Digitalni foto-aparati
Mobilni telefoni
Skolski pribor
=========
 
Odgovor na temu

define

Član broj: 41934
Poruke: 288
*.vdial.verat.net.



Profil

icon Re: Da li se ovo moze povezati?18.03.2006. u 14:17 - pre 220 meseci
Nismo se razumeli...
razumem ja kako da povezem tabele na taj nacin, ali je ovde fora sto ima vise redova u kojima je autoid=1
 
Odgovor na temu

SmilieBG
Aleksandar Skodric
NL

Član broj: 13094
Poruke: 1821
*.speed.planet.nl.



+3 Profil

icon Re: Da li se ovo moze povezati?18.03.2006. u 18:35 - pre 220 meseci
Ah, razumem...

Moras da radis sa HAVING u MySQL-u... Ali nisam siguran kako sintaksa ide...

Uglavnom, query 'zvuci' = izaberi sve, gde karateristike imaju autoid = 1...

Poz,
Sale

[Ovu poruku je menjao SmilieBG dana 18.03.2006. u 19:37 GMT+1]
=========
Uporedi cene i karakteristike za vise od 10.000 proizvoda, izmedju ostalog:
Digitalni foto-aparati
Mobilni telefoni
Skolski pribor
=========
 
Odgovor na temu

Dejan Vesic
Dejan Vesic
CEO
IGT Ogranak Beograd
Beograd

Član broj: 84929
Poruke: 217
*.ptt.yu.

Sajt: www.vesic.org


+1 Profil

icon Re: Da li se ovo moze povezati?21.03.2006. u 20:45 - pre 220 meseci
Citat:
define:
Cini mi se da u Accessu ima opcija da mogu da izvrsim rotiranje ove druge tabele tako da ovi elementi iz kolone autokarid mogu postati polja (1,2,3) koja bih mogao da povezem sa tabelom auto tako da dobijem novu tabelu koja bi izgledala

autoid,model,1,2,3
u zavisnosti od toga koliko ima karakteristika za pojedini automobil, tako da bi mozda neki drugi automobil imao
autoid,model,1 ili autoid,model,2,3
Da li je ovo moguce?


Moguće je ali nije lepo;

- pretpostavimo da je broj karateristika UNAPRED poznat (od 1 do N)

Onda bi jedan ovakav upit sa podupitima sredio stvar (ali ružno!)

Code:

Select a.AutoID, a.Model,
(Select k.Naziv from kar k, autokar ak where ak.karid = 1 and ak.karid = k.karid and ak.autoid = a.autoid) as K1, 
(Select k.Naziv from kar k, autokar ak where ak.karid = 2 and ak.karid = k.karid and ak.autoid = a.autoid) as K2, 
...
(Select k.Naziv from kar k, autokar ak where ak.karid = n and ak.karid = k.karid and ak.autoid = a.autoid) as Kn 
From Auto a


Ovakav upit će uvek imati fiksan broj kolona; na mestima gde karakteristika postoji, pojaviće se naziv karakteristike; ako ne postoji, pojaviće se NULL kao rezultat.

Rekoh li da nije lepo ...
 
Odgovor na temu

[es] :: MySQL :: Da li se ovo moze povezati?

[ Pregleda: 1983 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.