首页 > 解决方案 > 在不使用连接的情况下聚合查询数据透视表的计数

问题描述

我在 laravel 中使用以下 MySQL 查询来获取数据透视表计数。

select tracks.*, track_play_counts.track_id, count(track_play_counts.id) as track_play
from tracks
join track_play_counts on tracks.id = track_play_counts.track_id 
group by track_id
order by track_play ;

大量数据需要大约 20 秒的时间。我怎样才能减少它?

我已经尝试过withCount(),但它也用作过滤器查询,所以我不能在这里使用 withCount。

是不是我可以选择特定字段track_play而不使用连接?我意识到,因为加入它需要太多的响应时间。

标签: phpmysqllaravellaravel-5.6

解决方案


推荐阅读