Magento在设定日期之间获得订单总数的总和

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)

先感谢您!

Dre*_*ter 7

'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)