这是我想要完成的任务:从表“posts”中选择所有行,同时获取链接实体,例如作者(来自表“users”)和帖子所属类别的名称(来自表“categories”)。
到目前为止,这是我的两个查询:
这个获取帖子:
SELECT
posts.*
, users.authorName AS author
FROM posts
INNER JOIN users
ON users.id = posts.author
这个获取特定帖子的逗号分隔的类别列表:
SELECT
GROUP_CONCAT(categories.category) AS categories
FROM categories
INNER JOIN post_category
ON post_category.categoryID = categories.id
WHERE
post_category.postID = ?
这两个查询对自己的工作正常。
自然,当两者结合时,我不需要第二个查询的 WHERE 子句。我尝试将第二个查询用作第一个 SELECT 子句中的子查询,但它为所有帖子获取了一个逗号分隔的所有类别列表。我只想要我当前正在迭代的帖子的类别。
任何帮助将不胜感激,如果有任何不清楚的地方,我深表歉意 - 我很难思考,更不用说向其他人描述了;)