Autor Zpráva
kokolino
Profil *
č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
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 *
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.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0