- Παίρνουμε ένα backup της database
Για να προσθέσουμε έκπτωση 30% στα προϊόντα που δεν έχουν ήδη:
1 2 3 4 5 6 7 |
INSERT INTO oc_product_special (product_id, customer_group_id, priority, price, date_start, date_end) SELECT p.product_id, 1, 1, (p.price*0.7), '2022-01-10', '0000-00-00' FROM oc_product p LEFT JOIN oc_product_special ps ON p.product_id = ps.product_id WHERE p.price > 0 AND ps.price IS NULL; |
Για να αλλάξουμε τις τιμές όλων των προϊόντων σε 30% έκπτωση από την αρχική τιμή. (προϋποθέτει ότι όλα έχουν special price):
1 2 3 |
UPDATE `oc_product_special` ps SET ps.`price`=IFNULL((SELECT p.price * 0.7 from oc_product INNER join oc_product p on p.product_id = ps.product_id limit 1), ps.`price`) |
Με φίλτρο ανά κατασκευαστή (122):
1 2 3 |
UPDATE `oc_product_special` ps SET ps.`price`=IFNULL((SELECT p.price * 0.7 from oc_product INNER join oc_product p on p.product_id = ps.product_id where p.manufacturer_id = 122 limit 1), ps.`price`) |
Αλλαγή έκπτωσης σε 40% σε επιλεγμένες κατηγορίες:
1 2 3 4 5 6 7 |
UPDATE oc_product p LEFT JOIN oc_product_special ps ON p.product_id = ps.product_id LEFT JOIN oc_product_to_category p2c on p.product_id = p2c.product_id SET ps.price = (p.price*0.6) WHERE p.price > 0 AND p2c.category_id IN (361,367,368,327); |