0
为了获得客户,即有超过2金,我写了这个代码:Laravel雄辩。如何指望查询行与GROUP_BY并具有
Clients->select(....)
->leftJoin('payments')
->selectRaw('count(payments.client_id) as num_payments')
->groupBy($this->primaryKey)
->having('num_payments', '>', 2)
->get()
,它工作正常。生成类似这样的东西:
select `client_id`, ..., count(payments.client_id) as num_payments
from `clients` left join `payments` on ...
group by `id_client`
having `num_payments` > 2
现在我需要获取客户端的数量,而不必获取有关它们的所有信息。
Eloquent方法当使用groupBy时,“ - > count()”总是返回1。因为它是产生错误的SQL:
select count(*) from `clients` left join `payments` on ... group by `id_client`
解释请,我怎样才能在Laravel雄辩像
select count(*) from
(select `client_id`, ..., count(payments.client_id) as num_payments
from `clients` left join `payments` on ...
group by `id_client`) as new_table
thanx!这真的是我需要的 –