这是我的查询。我删除了表格名称以及其他我选择的内容,以方便阅读。SQL查询 - 在另一个查询中使用信息
Select
b.Key1,
b.Key2
From
b
left join c
on c.MailingKey = b.MailingKey
left join d
on d.OrderLineKey = c.OrderLineKey
left join e
on e.ShipKey = d.ShipKey
left join g
on d.ShipKey5 = g.ShipKey5
left join a
on a.DocKey = b.OrderKey
left join f
on f.pMethKey = b.MethKey
我需要使用键1和键2,我选择另一个查询,以获取有关从另一个表键(位置,身份证等)的更多信息。我想我需要在这个原始查询中创建2个循环,并将它们全部加入。所以这样的事情:
Select b.Key1, b.Key2, h.*, i.*
From b left join
c on c.MailingKey = b.MailingKey left join
d on d.OrderLineKey = c.OrderLineKey left join
e on e.ShipKey = d.ShipKey left join
g on d.ShipKey5 = g.ShipKey5 left join
a on a.DocKey = b.OrderKey left join
f on f.pMethKey = b.MethKey left join
(
Select*
From table l
Where ID = b.Key1
) h left join (
Select*
From table l
Where ID = b.Key2
) i
我只是不知道如何写等于b.Key1和b.Key2。
我正在使用Microsoft Sql Server Management。
采样数据W /预期的结果(这组内),将有助于。我还不明白这个问题。同样用简单的英语,描述你需要做的事情。你的意思是你需要使用这个作为一个表/视图加入?可以通用表表达式的工作(什么数据库mySQL,SQL Server,oracle /) – xQbert 2014-09-04 21:14:02
避免循环,一个sql语句做到这一切。 – Twelfth 2014-09-04 21:16:48