在单个查询中使用 PHP 连接两个 mysql 表

Posted

技术标签:

【中文标题】在单个查询中使用 PHP 连接两个 mysql 表【英文标题】:joining of two mysql table with PHP in single query 【发布时间】:2018-08-03 02:57:28 【问题描述】:

我有以下两张表。我想将它们加入到单个查询中。如果 Blog 表中的 Blog_Category_Id 是单个值,我可以使用内部连接来完成。但是当它作为一个多值出现时,我该怎么做呢?

First Table

Second Table

下面是我要展示的结果表...

Result Table

【问题讨论】:

【参考方案1】:
SELECT b.* ,GROUP_CONCAT(bc.blog_category ORDER BY bc.id) blog_category
FROM blog b 
INNER JOIN blog_category bc ON FIND_IN_SET(bc.id, b.blog_category_id)
GROUP BY b.id

【讨论】:

请考虑添加一些解释和/或参考文档【参考方案2】:

你可以在FIND_IN_SETINNER JOIN 看看这里你可能会得到答案

mysql Join two tables with comma separated values

【讨论】:

以上是关于在单个查询中使用 PHP 连接两个 mysql 表的主要内容,如果未能解决你的问题,请参考以下文章

Mysql PHP 查询更新

从 PHP 中检索 MYSQL 连接值

使用范围标准对连接表进行 MySQL 优化

如何在同一个表上组合两个查询以在 MySQL 中获得单个结果集

使用mysql在单个查询中更新多条记录

Mysql连接两个表并根据主键计算总记录