【发布时间】:2014-05-24 20:32:00
【问题描述】:
我已经搜索了很长时间,以在 stackoverflow 和 google 上找到一个看起来像我的查询,但还没有找到我想要的。也尝试了很多查询,但我对 SQL 不够熟练:(
Posts (id, title, url)
Imgs (id, title, url)
Zaps (id, title, url)
Comments(id, T_id, date, user, comment, from)
T_id = ids from Posts, Imgs, Zaps
from = contain text from wich table the data come from ("post", "img", "zap")
表 Comments 包含 3 个表中的所有混合 cmets。 我正在尝试获得此输出:
Comments.id, Comments.user, Comments.comment, Comments.from, title, url
最后一个 cmets 的列表以及它所来自的表的标题和 url。
我知道我的架构有点搞砸了,它正在生产中,我无法真正改变它。
如果有人可以帮助我,我将不胜感激。
谢谢!
【问题讨论】:
-
你说的最后的cmets是什么意思?您是否只需要每个表的一个或 n 个最近的 cmets?
-
如果您为每个表发布一组示例行和所需输出的示例,这可能会有所帮助,但我想我理解我之前的问题。
-
你能解释一下表格的列吗?它们是如何归属的?
-
最后的 cmets,无论他们来自哪张桌子。但是,@Chad 的响应似乎有效,我在查询末尾添加了 order by 和 limit,它返回了我所期望的。
-
@Jens 就像我说的那样,我的架构并没有真正优化或任何东西,但是看看 Chad 给出的响应和它使用的连接,这是链接它们的正确方法。