CakePHP:使用自定义计算字段分页
我有两个mysql表,如下所示: 客户:ID |名称 客户级别:ID |用户ID |客户ID |级别 我需要按名称和他的平均级别(每个用户为其客户定义一个级别)对客户列表进行分页。例如,如果我有以下示例: 客户:CakePHP:使用自定义计算字段分页,cakephp,paginate,cakephp-2.x,Cakephp,Paginate,Cakephp 2.x,我有两个mysql表,如下所示: 客户:ID |名称 客户级别:ID |用户ID |客户ID |级别 我需要按名称和他的平均级别(每个用户为其客户定义一个级别)对客户列表进行分页。例如,如果我有以下示例: 客户: ID | NAME 1 | democustomer 2 | bubul 客户级别 ID | USER_ID | CUSTOMER_ID | LEVEL 1 | 8 | 1 | 2 2 | 9 | 1 | 4 3
ID | NAME
1 | democustomer
2 | bubul
客户级别
ID | USER_ID | CUSTOMER_ID | LEVEL
1 | 8 | 1 | 2
2 | 9 | 1 | 4
3 | 11 | 2 | 3
4 | 13 | 2 | 4
我需要为每个客户提供其平均水平:
客户平均水平:
NAME | AVG_LEVEL
democustomer | 3
bubul | 3.5
使用此sql请求可以执行以下操作:
SELECT c.name, ROUND(AVG(ucn.note)) FROM `customers` as c, `customers_level` as ucn WHERE c.id = ucn.customer_id GROUP BY ucn.customer_id ASC
我可以对名称进行排序,但我不知道如何添加paginator可用的AVG_LEVEL字段?
这是我的控制器:
$this->Paginator->settings = $this->paginate;
$customers = $this->Paginator->paginate('Customer');
如何在我的客户分页数组列表中添加虚拟字段,以便能够根据名称和平均级别进行排序?无相关帮助?无相关帮助?