我的 MySQL 数据库中有上述模型:
Blogs (id: integer, name: varchar)
Posts (id: integer, name: varchar, blog_id: integer, created_at: date)
我想检索所有博客的列表,按具有最新帖子的博客排序。
我通过以下查询达到了这一点:
SELECT b.*, (SELECT p.created_at FROM posts p WHERE p.blog_id = b.id ORDER BY p.created_at DESC LIMIT 1) AS last_post_created_at FROM blogs b ORDER BY last_post_created_at DESC;
但是这个查询太慢了,我无法在我的应用程序中使用它。
你们有什么好的解决办法吗?
谢谢你。