Autor | Zpráva | ||
---|---|---|---|
kokolino Profil * |
#1 · Zasláno: 26. 9. 2010, 18:27:30
čawte
potrebujem spojit 3 tabuľky tak,aby sa mi v selekte zobrazila zlava a nova_cenu len v tedy ak sa nerovnaju "0" tovar id_tovaru|nazov|autor|popis|cena|zlava|nova_cena|id_farby|id_materialu| defaulte zlava a nova_cena su rovne "0" farba id_farby|nazov material id_materialu|nazov dokázal som napísať selekt na 3 tabuľky, ale neviem do neho zapísať podmienku, aby sa zlava a nova_cena vypísala len v tedy ak su rôzne od 0. zobrazenie zlavy a novej_ceny by som vedel obmedzit pri vypise v php, ale rád by som to mal vyriešené radšej priamo v selekte ak sa to dá. SELECT a.id_tovaru, a.nazov, a.autor, a.popis, a.cena, a.zlava, a.nova_cena, b.nazov, c.nazov FROM bakalarka.tovar a JOIN bakalarka.farba b ON ( a.id_farby = b.id_farby ) JOIN bakalarka.material c ON ( a.id_materialu = c.id_materialu); |
||
Tori Profil |
#2 · Zasláno: 26. 9. 2010, 18:49:07
Asi nechápu - jak by potom měly vypadat ty řádky, kde je produkt bez slevy? V tom sql nevidím žádný limit aby se vrátil pouze jeden výsledek a db přece nemůže vracet v jednom výsledku řádky s různými počty polí, -li se nepletu. A pokud tam nejsou žádná data, tak db vrací nejspíš NULL, což velmi nezvětší objem přenášených dat. Proč to nechcete zpracovávat v php (nebo šabloně)?
|
||
kokolino Profil * |
#3 · Zasláno: 27. 9. 2010, 13:20:33
Tori:
ako vidím tak to spracujem v php ako mi radíte , išlo mi o to či sa to dá spraviť v DB, lebo veci čo sa dajú riešiť už v DB, tak to rád riešim tam a potom mam menej práce. |
||
Časová prodleva: 14 let
|
0