Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL заявка за промяна на променлива цена на продукта в WooCommerce

//for Regular Price
UPDATE wp_postmeta 
SET meta_value = diff_price_value 
WHERE post_id = variation_id AND meta_key = '_regular_price';

//for Price
UPDATE wp_postmeta 
SET meta_value = price_value 
WHERE post_id = variation_id AND meta_key = '_price';

//for Sale Price
UPDATE wp_postmeta 
SET meta_value = price_value 
WHERE post_id = variation_id AND meta_key = '_sale_price';

ДОБАВЕНО Ако искате да обедините цялата заявка по-горе в една заявка, можете да използвате тази:

UPDATE wp_postmeta
SET meta_value = CASE
                   WHEN meta_key = "_regular_price" THEN diff_price_value
                   WHEN meta_key = "_price" THEN price_value
                   WHEN meta_key = "_sale_price" THEN price_value
                   ELSE meta_key
               END
WHERE post_id = variation_id
  AND meta_key IN ("_regular_price", "_price", "_sale_price");

Също така трябва да изтриете кеширането на цените на продуктите на WooCommerce, което се съхранява в wp_options таблица под _transient_timeout_wc_var_prices_{{post_id}} и _transient_wc_var_prices_{{post_id}} в option_name

DELETE
FROM `wp_options`
WHERE (`option_name` LIKE '_transient_wc_var_prices_%'
    OR `option_name` LIKE '_transient_timeout_wc_var_prices_%')

Всички горепосочени заявки са тествани и работят за мен.

Преди да изпълните тази заявка, направете резервно копие на базата данни

Справка:Копирайте продуктите на WooCommerce Продажните цени към редовните цени и нулирайте цените на разпродажба

Надявам се това да помогне!




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Solr - DIH дефинира и импортира поле много към много

  2. Каква е разликата между MySQL и MySQL2 предвид NodeJS

  3. couchdb срещу скоростта на mysql

  4. Къде да задам кодирането на знаци в приложение на Java Swing, така че да мога да пиша на хинди в MySQL база данни?

  5. Трябва да изтеглите последния x брой редове въз основа на датата