PHP.EE FOORUM   
Nimi:   Pass:   Mäleta mind! 
   Teemad | php.ee esilehele | registreeri | Märgi kõik teemad loetuks | #php.ee Skype vestlus | RSS
UUS TEEMA  OTSI  Lehekülgi: 1
MySQL join
Postitaja: joker 2010-07-21 18:48:37
Tabel "Product".

Id : Title
1 : Kala
2 : Kapsas
3 : Autod

Tabel "Keyword"

Id : ProductId : Title
1 : 3 : Sõidukid
2 : 3 : Kummid
3 : 2 : Juurviljad

Kuidas teha MySQLiga päring, et tulemus tuleks järgnev:

ProductId : ProductTitle : KeywordTitle
1 : Kala : Null
2 : Kapsas : Juurviljad
3 : Autod : Sõidukid
3 : Autod : Kummid

Viimati muudetud: 21-07-2010 18:50:23
Muutja: joker
Põhjus:

RE: MySQL join
Postitaja: rtfm 2010-07-21 20:09:45
tavaline left join
RE: MySQL join
Postitaja: Tark 2010-07-22 10:48:26
Esiteks, tee oma tabelid korda. Product tabelis on sul tegelikult kategooriad ja keyword tabeli põhjal võiks öelda, et tahad tooteid sildistada. Ehk siis on sul vaja hoopis rohkem tabeleid:

categories (id, title)
products (id, category_id, title)
products_and_labels (product_id, label_id)
labels (id, title)

products ja labels vahel on sul nüüd mitu mitmele seos.. ehk ühele tootele võib vastata mitu silti ja ühele sildile mitu toodet. Seda sa tõenäoliselt tahad.

Siitpealt on nüüd oluliselt lihtsam ja loogilisem teha join mis annab kõik sildile vastavad tooted välja.


Leheküljed: 1

©2002-2013 Martin Rebane & PHP.ee kaasautorid
  0.0929360389709