【发布时间】:2020-07-17 01:15:43
【问题描述】:
我正在使用 Laravel Relation 与自身关联以获取计数。
在 laravel 中是这样的:
public function sameak()
{
return $this->hasMany(self::class, 'ak', 'ak');
}
它产生的原始 SQL 查询是:
select
`quotes`.*,
(
select
count(*)
from
`quotes` as `laravel_reserved_0`
where
`quotes`.`ak` = `laravel_reserved_0`.`ak`
and `laravel_reserved_0`.`deleted_at` is null
) as `sameaddresskey_count`
from
`quotes`
order by
`id` desc
limit
25 offset 0
我对索引不太熟悉,但是我为 ak 列添加了一个索引,这对我有很大帮助。
有没有更好的方法来做到这一点?
如果有人能指出我正确的方向,那就太棒了。
提前致谢。
迈克
【问题讨论】:
标签: mysql laravel indexing eloquent relationship