在Zen Cart中创建自定义mysql JOIN查询

时间:2019-03-26 05:52:00

标签: php mysql zen-cart

我正在尝试产品的数量以及用户选择的属性名称。例如,为product id = 180选择了什么属性名称,其中order id = 2118是什么?

任何建议,我如何才能正确执行mysql join查询以获取订单数据。

1 个答案:

答案 0 :(得分:0)

处理此类问题的方法是将查询分解为多个步骤。

在Zen Cart中,订单的属性详细信息存储在表orders_products_attributes中。 (注意:我假设您的表的前缀为zen_。如果没有,请从下面的查询中删除它。)因此,在phpMyAdmin中,您可以使用:

SELECT * FROM zen_orders_products_attributes where orders_id = 2118

这为您提供了所有属性,但是您得到的是orders_products_id,而不是产品ID。因此,要将其映射回product_id,请检查orders_products表。

SELECT * FROM zen_orders_products where orders_id = 2118

因此,现在您可以看到两个表都包含orders_products_idorders_id。 因此,请在查询中使用这两个字段。我猜想products_optionsproducts_options_values字段包含您需要的信息。

SELECT products_options, products_options_values FROM zen_orders_products op, zen_orders_products_attributes opa WHERE op.orders_id = opa.orders_id AND op.orders_id = 2118 AND op.products_id=180;