复杂的查询,很多连接

发布于 2024-11-06 09:41:48 字数 316 浏览 0 评论 0原文

我已经为此奋斗了几个小时,希望你能给我一些新的见解。我有 6 个表,如下所示:

  • 表 A
  • 表 B,它是 A(一对多)的子
  • 表 表 C,它是 B(一对多)的子表
  • 表 D,它是一个A 的另一个子级(一对多)

  • 表 E 是 D 的另一个父级,在一对[零或一]关系

  • 表 F,它是 E 的另一个子级(一对多)

基本上我需要从 B 中选择一个字段,其中 C =

F。尝试过子查询、连接以及两者的组合,但还没有走得太远。任何想法将不胜感激。

I've been wrestling with this for a few hours and I'm hoping you can give me some fresh insight. I have 6 tables as follows:

  • Table A
  • Table B, which is a child of A (one-to-many)
  • Table C, which is a child of B (one-to-many)
  • Table D, which is a another child of A (one-to-many)

  • Table E is another parent of D, in a one-to-[zero-or-one] relationship

  • Table F, which is another child of E (one-to-many)

Basically I need to select a field from B where C = F.

I have tried with subqueries, joins, and a combination of both, but have not got too far. Any ideas would be appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

三岁铭 2024-11-13 09:41:48

根据您提供的信息,

SELECT  *
FROM    A
        INNER JOIN B ON B.AID = A.AID
        INNER JOIN C ON C.BID = B.BID
        INNER JOIN D ON D.AID = A.AID
        INNER JOIN E ON E.DID = D.DID
        INNER JOIN F ON F.EID = E.EID
WHERE   C.Field = F.Field

如果这不是您所需要的,您可能需要发布一小部分数据以及所需的结果。

With the information you've presented, how about

SELECT  *
FROM    A
        INNER JOIN B ON B.AID = A.AID
        INNER JOIN C ON C.BID = B.BID
        INNER JOIN D ON D.AID = A.AID
        INNER JOIN E ON E.DID = D.DID
        INNER JOIN F ON F.EID = E.EID
WHERE   C.Field = F.Field

If this is not what you need, you might want to post a small subset of data with the required results.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文