需要从OpenCart数据库中提取产品成本(而非价格)

时间:2018-12-21 02:24:41

标签: database phpmyadmin opencart opencart2.x php-mysqlidb

我将自己的Opencart网站迁移到了Wordpress,但不幸的是,由于Woocommerce中没有成本字段,因此无法转移产品成本。后来我安装了woocommerce成本插件,并意识到我从未从OpenCart转移成本。我只剩下旧的OpenCart DB。如何从SQL文件获取产品成本?如果我知道哪个表有费用,我可以手动完成。

2 个答案:

答案 0 :(得分:0)

OC数据库oc_product(如果未更改oc_前缀)中的

表具有产品成本。名称为price的列中的价格不含税。在OC中,产品无额外费用。在购买过程中计算并存储到名称为oc_order_productoc_order_total的数据库表中的附加价格(成本)。

答案 1 :(得分:0)

Woocommerce为产品提供2种价格:get_price,get_regular_price;

OpenCart系统几乎没有折扣。其使用表

  • oc_product-主要价格
  • oc_product_discount-活动价格
  • oc_product_special-活动价格

您可以通过查询获得它:

(SELECT price FROM " . DB_PREFIX . "product_discount pd2 
    WHERE pd2.product_id = p.product_id 
    AND pd2.customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' 
    AND pd2.quantity = '1' 
    AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) 
    AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) 
ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, 

(SELECT price FROM " . DB_PREFIX . "product_special ps 
    WHERE ps.product_id = p.product_id 
    AND ps.customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' 
    AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) 
    AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) 
ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special,