帮助制定SQL查询

时间:2010-05-16 16:34:49

标签: sql

这是我的方案

  

表1:GID || INFO1

     

表2:GID || Tb1GID(指   表1的GID || INFO2

     

表3:GID || INFO3

     

表4:GID || Tb2GID(指   表2的GID || Tb3GID(指   表3 GID ||值

现在我必须构建一个sql查询来获取值,给定一个特定的Info1,Info2,Info3。 本质上,我必须通过映射表1的info2和GID,使用info1,表格的GID获得表1的GID,然后使用信息3获取表3的GID。并将这些组合到GID以获取值在表4中。

为此构建SQL查询的最佳方法是什么?

1 个答案:

答案 0 :(得分:2)

只需加入id:s上的表格并匹配条件中的信息值:

select
  t4.Value
from
  [Table 1] as t1
  inner join [Table 2] as t2 on t2.Tb1GID = t1.GID
  inner join [Table 4] as t4 on t4.Tb2GID = t2.GID
  inner join [Table 3] as t3 on t3.GID = t4.Tb3GID
where
  t1.Info1 = @Info1 and
  t2.Info2 = @Info2 and
  t3.Info3 = @Info3

这最清楚地传达了关系如何工作,为查询规划者提供了最佳信息。