举个例子: 我有一个包含“艺术家”和“绘画”的数据库。我需要创建一个包含艺术家信息的页面(我从 URL 中获取艺术家 ID)以及与该艺术家相关的每幅画,我都链接了这两个表。
有没有办法只用 1 条语句来完成该请求?
我试过这个:
SELECT *
FROM artiste, toile
WHERE artiste_id = {$id} AND
fk_artiste_id = artiste_id
它有效,但由于我用了一段时间来获取数据,我得到了艺术家信息的 3 倍(因为有 3 幅画与该艺术家相关联),如果我按 artiste_id 进行 GROUP BY,我只会得到一位艺术家,这是第一幅画,不是全部。
感谢您的宝贵时间! (请原谅我糟糕的英语)。
最佳答案
您得到的结果实际上很正常。您实际上是从给定艺术家那里获取所有画作,并将艺术家的信息添加到每幅画中。您可以考虑执行两个查询,一个查询艺术家信息,一个查询绘画作品。或者您可以保留查询并确保在循环之前输出艺术家信息,然后在循环内输出绘画信息并跳过附加到它的艺术家信息。
关于php - MySQL SELECT 语句 : Multiple items and Owner's Information,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11813458/