php - Magento更新每商店价格查看SQL

标签 php mysql sql magento

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

我要实现的是一个查询,该查询采用商店视图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;

最佳答案

制作了一个Magento 1.9模块,以更新每个商店视图的价格并使用汇率。你可以在这里找到它:

Magento 1.9 price update per store view github

关于php - Magento更新每商店价格查看SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48297493/

相关文章:

PHP 在 echo 时转换 javascript

php - 从同一个表中获取多个值(乱序的)

python - 更新函数不更新表条目

sql - 如何确定和设置 Oracle 查询中的并行度

android - 它不会写超过 3 个表

c# - SQL查询按时间太慢

php - mysql join select 解释

php - Laravel 如何查找搜索结果是从 orWhere 部分找到的

php - 这个 SQL 查询是安全的吗?

mysql - 查询2个表之间的mysql连接