我想知道在制作Magento模块时如何使用聚合sql函数。我目前在我的模式中有这个代码;
$rake = Mage::getModel('showdown/votes')->getCollection();
$rake->addFieldToFilter('votedfor', $productid);
//$collection->groupByFilter('matchid'); //<-- what do i put here?
$sticks = count($rake);
答案 0 :(得分:5)
我不确定您要实现的目标,因为您的问题标题与提供的代码示例冲突。
标题询问如何计算集合,并且您的代码示例询问如何执行分组。
所以,
收藏计数
count($collection)
,$collection->count()
或简称$collection->getSize()
,这将避免收集负载(理想情况下,如果您只是需要计数而不是其他内容)
分组
基于EAV的收藏:
$collection->groupByAttribute('matchid');
非基于EAV的收藏:
$collection->getSelect()->group('matchid');