首页 文章

Magento更新每个商店的价格视图SQL

提问于
浏览
0

我尝试在商店视图中更新产品价格 .

我想要实现的是一个查询,它在商店视图A中获取产品的价格,乘以数字(汇率) . 并将该新价格应用于storeview B的产品 .

现在我只想出一个查询,几乎就是这样 . 唯一的问题是我需要将id更改为“cped.entity_id = 1 <<此ID在查询中”的相应ID . 现在我用合适的价格更新价格,选择相同的产品价格来反复计算 .

我也看到了一个扁平的目录表,现在是我的问题:我可以直接查询或者这不是一个好主意吗?

(使用Magento 1.9)

UPDATE catalog_product_entity_decimal val
  SET  val.value = (
                     SELECT tmpref.value
                     FROM (SELECT cped.value
                           FROM catalog_product_entity_decimal cped
                           WHERE cped.attribute_id = (
                             SELECT attribute_id
                             FROM eav_attribute eav
                             WHERE eav.entity_type_id = 4
                                   AND eav.attribute_code = 'price')
                                 AND cped.store_id = 0
                                 AND cped.entity_id = 1)
                       AS tmpref) * (
    SELECT rate
    FROM directory_currency_rate dcr
    WHERE dcr.currency_from = 'EUR' AND dcr.currency_to = 'GBP')
 WHERE  val.attribute_id =
         (SELECT attribute_id
          FROM eav_attribute eav
          WHERE eav.entity_type_id = 4
                AND eav.attribute_code = 'price')
        AND val.store_id = 2;

1 回答

相关问题