Sam*_*nes 4 mysql magento mage
我可以用常规的mySQL做到这一点,但我希望能够做到"magento方式",因为它......
我想做的是运行一个查询,它将在订单日期之间为我的订单总计SUM(grand_total),即计算出2012年7月的总收入.
我已经尝试了各种各样的变化,我可能非常接近或者我可能在一百万英里之外,所以我很感激任何人都可以给我的帮助!到目前为止我所拥有的是:
$orders = Mage::getModel('sales/order')->getCollection();
$orders->addAttributeToFilter('date_field', array(
'from' => '2011-09-01',
'to' => '2011-09-30',
));
$orders->addExpressionAttributeToSelect('grand_total', 'SUM({{grand_total}})', grand_total);
$orders_total->getSelect()->$orders->grand_total(SUM(grand_total));
Run Code Online (Sandbox Code Playgroud)
先感谢您!
'magento方式'将使用集合.
您的问题是自7月以来的所有订单 如果是这种情况,那么你只需要过滤器中的'from'而不是'to'...
$orderTotals = Mage::getModel('sales/order')->getCollection()
->addAttributeToFilter('status', Mage_Sales_Model_Order::STATE_COMPLETE)
->addAttributeToFilter('created_at', array('from' => '2012-07-01'))
->addAttributeToSelect('grand_total')
->getColumnValues('grand_total')
;
$totalSum = array_sum($orderTotals);
// If you need the value formatted as a price...
$totalSum = Mage::helper('core')->currency($totalSum, true, false);
Run Code Online (Sandbox Code Playgroud)