【发布时间】:2012-07-12 17:11:00
【问题描述】:
我正在使用JOIN 和 MySQL 来选择一篇文章以及与之相关的所有 cmets,但我意识到,当我选择一篇文章并且有多个评论时,我会得到同一篇文章被数字重复cmets。例如:
我的表格articles 包含以下列:
1.id
2.article
表comments 包含以下列:
1.c_id
2.body
3.a_id
我尝试使用的 MySQL 查询:
SELECT * FROM `articles`
JOIN`comments`
ON (`articles`.id = `comments`.a_id)
WHERE `articles`.id = 134
这是最终的结果:
id article c_id body a_id
134 Article1 2 Comment1 134
134 Article1 3 Comment2 134
134 Article1 8 Comment3 134
所以我的问题是:由于每条评论都得到相同的article 列值,
无论如何,这会减慢 MySQL 查询或我的 Web 应用程序的速度吗?因为我请求的数据比我真正需要的更多。
我可以将查询分成 2 个简单的 SELECT 查询,但这有点过分了,对吧?
感谢阅读。
编辑:
如果我 article 列的值更大,包含 1k+ 个字符的东西,它会复制它吗?
【问题讨论】:
-
您可能需要考虑进入此过程的总负载量 - 您可能正在尝试优化已经足够快的东西。这里似乎就是这种情况。
标签: mysql sql performance select join