SQL插入以填充具有条件的关联表

And*_*y M 3 sql sql-server insert sql-server-2008-r2 associative-table

我有两个表和它们之间的关联表(让我们调用它们Tab1,Tab2然后ATab).

Tab1Tab2具有相同的字段(例如目的):

  • Id.
  • Name.

在我看来ATab,我想将记录插入到员工Tab1Tab2他们的ID中.

为了做到这一点,我想在一个sql脚本中编写我的查询,其中包括:

我可以设法做以下事情:

INSERT INTO ATab(Tab1Id, Tab2Id) 
SELECT Tab1.Id, ????? 
FROM Tab1 WHERE Tab1.Name='Foo';
Run Code Online (Sandbox Code Playgroud)

但我只选择Foo了我的第一张桌子的记录......

我如何设法执行"双"where子句?可能吗 ?

epo*_*och 5

通过使用 AND

INSERT INTO ATab(Tab1Id, Tab2Id) 
(SELECT Tab1.Id, Tab2.Id
FROM Tab1, Tab2 WHERE Tab1.Name = 'Foo' AND Tab2.Name = 'Bar')
Run Code Online (Sandbox Code Playgroud)