我有 3 个表:帐户、交易、报表。帐户有许多交易和报表(外键是 account_id)。
我需要检索所有具有未结余额和/或未开票交易的帐户的帐户名称、已开票交易余额、未开票(待处理)交易的总数和计数以及最后对帐单日期。
此查询按预期返回数据:
选择 Account.id,Account.account_name, Billed.balance, Pending.items, Pending.amount, Stmnt.latest 从 帐户作为帐户 左连接 (选择 帐户ID, (SUM(`Transaction`.`debit`) - SUM(`Transaction`.`credit`)) 作为余额 从 `事务`作为`事务` 在哪里 `事务`.`statement_id` > 0 AND `事务`.`void` = 0 通过...分组 帐户ID ) 按计费方式 Billed.account_id = Account.id 左连接 (选择 `account_id`, (SUM(`Transaction`.`debit`) - SUM(`Transaction`.`credit`)) 作为金额, COUNT(id) 作为项目 从 `事务`作为`事务` 在哪里 `事务`.`statement_id` = 0 AND `事务`.`void` = 0 通过...分组 帐户ID ) AS Pending ON Pending.account_id = Account.id 左连接 (选择 `account_id`, MAX(Statement.statement_date) 最新 从 `语句`作为`语句` 在哪里 `声明`.`void` = 0 通过...分组 帐户ID ) AS Stmnt ON Stmnt.account_id = Account.id 通过...分组 帐户ID 拥有 Billed.balance > 0 或 待定.pending_ct > 0 订购方式 帐户名 ASC
我很难成功地将其转换为 CakePHP 2.1 查找或分页友好的选项。
任何想法将不胜感激。