【发布时间】:2025-11-28 17:15:01
【问题描述】:
我在用户表中有一条巨大的记录,我想以优化的方式显示这条记录。我做了一个查询,但它们花费了很多执行时间(请参阅查询),而且我已经管理了两个表中的索引,但严重不成功(请参阅说明)。
我希望每个用户的帖子都算出我这样查询的原因:
SELECT
(SELECT COUNT(up.`user_id`) FROM `users_post` up WHERE up.`user_id` = uf.`user_id`
) AS user_count
FROM `users` uf;
展开
【问题讨论】:
-
对于庞大的数据库,可能值得预先计算帖子数到一个单独的
users表列中并使用它而不是每次动态计算它 -
我希望每个用户发帖数,我为什么要这样查询...@zerkms
-
我明白,如果数据库很大并且需要经常检索,您需要预先计算数据并存储
-
@zerkms 关于这个的任何解决方案...
-
你为什么认为我不喜欢它?我没有投反对票(+1 让你更积极 ;-)
标签: mysql optimization query-optimization subquery full-text-search