ARJ*_* KP 7 cakephp cakephp-2.0
我有这个查询,我想用数量的总和来订购.我必须在分页中使用此结果,请帮帮我..
SELECT (SUM( OrderItem.quantity )) AS qty, `OrderItem`.`item_name` ,
`OrderItem`.`size` FROM `order_items` AS `OrderItem` WHERE 1 =1
GROUP BY `OrderItem`.`item_name` , `OrderItem`.`size`
ORDER BY (SUM( OrderItem.quantity )) DESC
Run Code Online (Sandbox Code Playgroud)
我试过下面的代码,但它不起作用
$this->paginate = array('fields'=>array('(SUM(OrderItem.quantity)) as qty',
'OrderItem.item_name',
'OrderItem.size'),
'group'=>array('OrderItem.item_name','OrderItem.size'),
'order' => array('(SUM(OrderItem.quantity))'=>'DESC'));
Run Code Online (Sandbox Code Playgroud)
您可以使用“自定义查询分页\xc2\xb6”,请点击以下链接:
\n\nhttp://book.cakephp.org/2.0/en/core-libraries/components/pagination.html#custom-query-pagination
\n\n在您的模型中使用它:
\n\n public function paginate($conditions, $fields, $order, $limit, $page = 1, $recursive = null, $extra = array()) {\n $page--;\n $offset=$limit*$page;\n $result= $this->find(\'all\',array(\'fields\'=>array(\'(SUM(OrderItem.quantity)) as qty\',\n \'OrderItem.item_name\',\n \'OrderItem.size\'),\'group\'=>array(\'OrderItem.item_name\',\'OrderItem.size\'),\'order\' => array(\'qty\'=>\'DESC\'),\'conditions\'=>$conditions,\'limit\'=>$limit, \'offset\'=>$offset));\n return $result;\n\n }\nRun Code Online (Sandbox Code Playgroud)\n