从mysql

时间:2016-05-23 18:07:48

标签: mysql sql

请检查图像。

two table, fevorite table and post table.

这里我有2张桌子。一个是帖子表,另一个是 fevorite 表。两者都有主键,post_id fevorite 表中为FOREIGN_KEY。

现在我的需求是

  1. 从fevorite表中选择post_id列表WHERE fevorite_by = 2.
  2. 使用此post_id列表从帖子表中获取帖子详细信息(post_title,created_by,...)。
  3. 我在单个查询中需要所有这些东西。提前谢谢。

1 个答案:

答案 0 :(得分:1)

使用子查询获取结果:

SELECT * FROM Post WHERE post_id IN (
SELECT post_id FROM fevorite WHERE fevorite_by = 2)

或者你可以通过JOIN

来做到
SELECT P.*
FROM Post P
JOIN fevorite F ON F.post_id = P.post_id
WHERE F.fevorite_by = 2