php - 在不使用连接的情况下聚合查询数据透视表的计数
问题描述
我在 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
而不使用连接?我意识到,因为加入它需要太多的响应时间。
解决方案
推荐阅读
- jquery - 如何在 jQuery 中过滤表格并获得多个结果
- php - Laravel - 存储上传/操作状态的最佳实践是什么?比如上传头像
- python - 一段代码中多个按钮之间的换行符
- java - 可以在 Kotlin 中使用 LocalDateTime 作为 RequestParam 吗?
- angular - 如何使用通配符过滤 MatTableDataSource
- react-native - AuthContext 未定义反应原生
- vue.js - 如何基于 package-lock.json 为生产基地部署 Vue.js 应用程序
- pandas - 如何堆叠 pd.DataFrame 直到它变成 pd.Series?
- html - Angular 打字稿处理发布请求数据
- r - 如何让控制台光标回到R中的行首?