Magento - 谁通过数据库查询在 Magento 网上商店订购了什么?

Magento - Who ordered what in Magento webshop with a query on db?

我想弄清楚谁在我们的网上商店订购了什么,以便我们的营销实习生可以弄清楚每个客户的价值等等。

我已经构建了一个查询,但它似乎无法正常工作:

SELECT e.*, sfoi.*, sfoa.lastname, sfoa.email, sfoa.street, sfoa.postcode, sfoa.country_id
FROM sales_flat_order e
INNER JOIN sales_flat_order_item sfoi ON (e.entity_id=sfoi.order_id) 
INNER JOIN sales_flat_order_address sfoa ON (e.customer_id=sfoa.customer_id)
WHERE date_format(e.created_at, '%Y') LIKE '2015' 
AND sfoi.parent_item_id IS NULL 
AND sfoi.qty_ordered > 0;

customer_id 的匹配给出了错误的结果,我认为我对我在 magereverse.com 上找到的数据库模型的理解不够透彻,无法弄清楚这个问题。

我们正在使用 Magento 1.7.0.2。任何帮助将不胜感激。

-编辑- 我想我找到了解决方案:

SELECT e.*, sfoi.*, sfoa.lastname, sfoa.email, sfoa.street, sfoa.postcode, sfoa.country_id
FROM sales_flat_order e
INNER JOIN sales_flat_order_item sfoi ON (e.entity_id=sfoi.order_id) 
INNER JOIN sales_flat_order_address sfoa ON (e.entity_id=sfoa.parent_id)
WHERE date_format(e.created_at, '%Y') LIKE '2015' 
AND sfoi.parent_item_id IS NULL 
AND sfoi.qty_ordered > 0;

Magento 1.7.0.2 提供报告过滤器,可在管理面板的“报告”菜单下使用。它已经有这样的报告工具:

报告 > 销售 > 订单

报告>产品>畅销书

报告 > 产品 > 订购的产品

报告 > 客户 > 按订单总数分类的客户

报告 > 客户 > 客户订单数

等等

SELECT e.*, sfoi.*, sfoa.lastname, sfoa.email, sfoa.street, sfoa.postcode,  sfoa.country_id
FROM sales_flat_order e
INNER JOIN sales_flat_order_item sfoi ON (e.entity_id=sfoi.order_id) 
INNER JOIN sales_flat_order_address sfoa ON (e.entity_id=sfoa.parent_id)
WHERE date_format(e.created_at, '%Y') LIKE '2015' 
AND sfoi.parent_item_id IS NULL 
AND sfoi.qty_ordered > 0;

问题出在匹配 sales_flat_order_address 和 sales_flat_order

的键上