mysql - 从mysql中的连接表中获取数据

标签 mysql sql

请检查图像。

two table, fevorite table and post table.

这里我有两张 table 。一个是post表,另一个是fevorite表。两者都有主键,并且在 fevorite 表中 post_id 是 FOREIGN_KEY。

现在我的需求是:

  1. 从 fevorite 表中选择 post_id 列表(WHERE fevorite_by=2)。
  2. 使用此 post_id 列表从帖子表中获取帖子详细信息(post_title、created_by...)。

我需要在单个查询中获得所有这些内容。提前致谢。

最佳答案

使用子查询来获取结果:

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

关于mysql - 从mysql中的连接表中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37397692/

相关文章:

Mysql 谜题 : Conditions in ON vs. WHERE

SQL JOIN 并限制第二个表中某些条件的结果

php - Laravel Spatie 事件日志包。创建新事件时如何添加 Causer_id 和 Causer_type?

mysql - 用于跟踪网站用户的数据库

SQLITE 多列索引与单列索引

sql - 日期格式 : Invalid Month

mysql - 按优先级 NULL 分组?

php - Codeigniter - 查询中的条件

mysql - 顺序数据的数据库

php - PHPMAIL 遇到问题..有什么建议吗?