Autor Zpráva
martin6541
Profil
Dobrý den.
Mám vypracovan příkaz pro dávkové navýšení ceny produktů podle výrobce:
-- navýšení ceny pro určitého výrobce + zaokrouhlení nahoru na desítky
-- upravit záznam v tabulce
UPDATE j3_virtuemart_product_prices
SET

-- ve sloupci product_price vynásobit DPH, navýšit cenu o 8%, vydělit 10, zaokrouhlit nahoru, vynásobi zpět deseti a odečíst DPH
product_price = Ceil(( product_price * 1.21 * 1.08 ) / 10) * 10 / 1.21

-- s podmínkou kde v tabulce výrobců je daný produkt zařazen pod výrobcem id 20
WHERE  virtuemart_product_id IN (SELECT virtuemart_product_id
                                 FROM   j3_virtuemart_product_manufacturers
                                 WHERE  virtuemart_manufacturer_id = '20') 

Pak mám druhý vzor, kde navyšuji ceny produktů dávkově podle kategorie:
-- navýšení ceny pro určitého výrobce + zaokrouhlení nahoru na desítky
-- upravit záznam v tabulce
UPDATE j3_virtuemart_product_prices
SET

-- ve sloupci product_price vynásobit DPH, navýšit cenu o 15%, vydělit 10, zaokrouhlit nahoru, vynásobi zpět deseti a odečíst DPH
product_price = Ceil(( product_price * 1.21 * 1.15 ) / 10) * 10 / 1.21

-- s podmínkou kde v tabulce výrobců je daný produkt zařazen do kategorie id 82
WHERE  virtuemart_product_id IN (SELECT virtuemart_product_id
                                 FROM   j3_virtuemart_product_categories
                                 WHERE  virtuemart_category_id = '82')

Poznámka: u všech mám ještě přidánu funci zaokrouhlování... ale toho si nevšímejte

A teď potřebuji vyjímečně navýšit cenu výrobků daného výrobce ale jen v určité kategorii. A tady si moc nejsem jistý, jak to správně pojit.
Je toto správně?
-- s podmínkou kde v tabulce výrobců je daný produkt zařazen pod výrobcem id 20 a zároveň je v kategorii 82
WHERE virtuemart_product_id IN
(
       SELECT virtuemart_product_id
       FROM   j3_virtuemart_product_manufacturers
       WHERE  virtuemart_manufacturer_id = "20"
       AND
       SELECT virtuemart_product_id
       FROM   j3_virtuemart_product_categories
       WHERE  virtuemart_category_id = "82")

nebo?
-- s podmínkou kde v tabulce výrobců je daný produkt zařazen pod výrobcem id 20 a zároveň je v kategorii 82
WHERE virtuemart_product_id IN
(
       SELECT virtuemart_product_id
       FROM   j3_virtuemart_product_manufacturers
       WHERE  virtuemart_manufacturer_id = "20")
AND
(
       SELECT virtuemart_product_id
       FROM   j3_virtuemart_product_categories
       WHERE  virtuemart_category_id = "82")
Kajman
Profil
WHERE virtuemart_product_id IN
(
       SELECT virtuemart_product_id
       FROM   j3_virtuemart_product_manufacturers
       WHERE  virtuemart_manufacturer_id = "20")
AND virtuemart_product_id IN
(
       SELECT virtuemart_product_id
       FROM   j3_virtuemart_product_categories
       WHERE  virtuemart_category_id = "82")
martin6541
Profil
Kajman:
Děkuji mnohokrát. Jak se mohu odměnit?

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0