2014-01-28 51 views
0

我第一次面对巨大的Magento数据库。对于一切Magento有更多的表:sales_X其中X可以取6个值,呵呵。我正式失去了。我希望能够从Magento记录中获得以下信息,但要直言不讳,我不知道从哪里开始。获得Magento城市的终身销售

这就是我需要提取(为加利福尼亚州):

City | County | Tax Rate | Tax Dollar Amount Collected | Total City Sales Amount 

Example: Santa Monica | Los Angeles | 9.5% | $95.00 | $1,000 

如果有人能帮助我,我将非常感谢。如果可以使用管理网格来实现这一点,那么指向这个方向也是可行的。

+0

什么是数据库中的实际列? –

+0

我不知道。我是Magento的全新品牌。在一些表格中,我看到超过4个与税务相关的字段。我真的迷失了。 – reydelleon

+0

SELECT * FROM sales_1 UNION SELECT * FROM sales_2 UNION SELECT * from sales_n; – Strawberry

回答

1

我想你需要这个帐单地址:

SELECT `city`, `region`, `tax_percent`, SUM(`tax_amount`), SUM(`grand_total`) 
FROM `sales_flat_order_address` 
LEFT JOIN `sales_flat_order` ON `sales_flat_order_address`.parent_id = `sales_flat_order`.entity_id 
WHERE `address_type` = 'billing' 
GROUP BY `tax_percent`, `city` 

如果你想让它根据送货地址:

SELECT `city`, `region`, `tax_percent`, SUM(`tax_amount`), SUM(`grand_total`) 
FROM `sales_flat_order_address` 
LEFT JOIN `sales_flat_order` ON `sales_flat_order_address`.parent_id = `sales_flat_order`.entity_id 
WHERE `address_type` = 'shipping' 
GROUP BY `tax_percent`, `city` 
+0

你很快成为我的英雄,嘿嘿。我可以在我的网格中使用该SQL语法,还是必须将其转换为Magento“languaje”? – reydelleon

+0

在您的_prepareCollection开头: $ collection = Mage :: getModel('sales/order_address'); 然后离开加盟销售/订单表(不记得的语法) 然后组 $收藏 - > getSelect() - >组(“征税百分比,城市”); 和 $收藏 - > addExpressionAttributeToSelect( 'tax_sum',新Zend_Db_Expr( 'SUM('tax_amount')',阵列()); $收藏 - > addExpressionAttributeToSelect( 'grand_total_sum',新Zend_Db_Expr('SUM(' grand_total')',array()); –

+0

发票没有这些信息?这个想法是获得终生销售,我真的很困惑,我应该从订单还是发票? – reydelleon