根据用户是不是关注帖子来获取帖子查询的最有效方法
Posted
技术标签:
【中文标题】根据用户是不是关注帖子来获取帖子查询的最有效方法【英文标题】:Most Efficient Way to Get a Query of Posts based upon if a User Follows Them根据用户是否关注帖子来获取帖子查询的最有效方法 【发布时间】:2010-11-23 02:03:42 【问题描述】:现在我有两个表用于获取用户在 mysql 中关注的帖子的时间线,时间线和关注。
在 'follows' 表中,有 'follows.follow_From' 列,'follows.follow_To' 列显示关注的来源。
在时间线表中,有一个 'timeline.post_From' 列,其中包含作者的用户 ID。
仅当当前用户在“关注”表中有“关注”时,从“时间线”中选择所有帖子的最有效方法是什么?我目前正在使用 MySQL 数组,但我认为它效率不高。感谢您阅读本文和您的帮助!
【问题讨论】:
【参考方案1】:我不是专家,它可能不是最有效的,但我猜:
-
SELECT follow_To FROM 跟随 WHERE follow_From = 'user-id'
SELECT * FROM timeline WHERE timeline.post_From =(以上结果)
例如SELECT * FROM 时间轴 WHERE 时间轴.post_From IN (SELECT follow_To FROM 跟随 WHERE follow_From = 'user-id')
反过来做肯定会更慢,因为你处理更多的数据然后削减它。先截断数据再查找比较好。
【讨论】:
以上是关于根据用户是不是关注帖子来获取帖子查询的最有效方法的主要内容,如果未能解决你的问题,请参考以下文章
SQL查询从数据库中的一个表中获取所有帖子,但来自特定用户的最多5个条目? [复制]
Java Firestore Android 在查询中使用数组列表来显示来自关注用户的帖子
Java Firestore Android 在查询中使用数组列表来显示来自关注用户的帖子