【发布时间】:2012-12-25 21:55:36
【问题描述】:
这是我的 php/MySQL 任务:
我有一个表POSTS,其中包含作为主键的num 字段和有关帖子的其他信息字段(author、title 等)。我还有一个表LIKE,其中包含一个作为主键的userId 字段和一个与num 中的num 字段对应的字段POST。给定一个特定的userID,我需要从POSTS 表中获取userId“喜欢”的所有行。
表 1 - 帖子
-数字
-作者
-标题
表 2 - 喜欢
-用户ID
-postId
这一切都在 php 中,所以我的第一个想法是从LIKES 表中获取所有行,其中userId 与给定的行匹配,并将这些行存储在一个数组中。然后我会遍历数组,对于每一行我会搜索得到POSTS 表where postId=POSTS.num 的行。但是,这似乎会相当慢,特别是因为通过数组的每次迭代都是一个单独的 mysql 查询。
我假设有更快的方法。是使用临时表还是有更好的方法来连接表?我必须假设两个表都包含很多行。我是 mysql 新手,所以如果有更好的解决方案,请解释为什么它更好。提前感谢您的帮助!
【问题讨论】: