在一个表中插入一行连接另一个表

时间:2013-08-24 14:59:54

标签: sql fluent-migrator

我不确定这是如何工作的,但有两张桌子。一个表格仪器和另一个仪器元数据。仪器应该只有一行仪器元数据。我正在尝试创建迁移以删除某些工具的当前工具元数据,因为有人添加了字段以使其为1对多。我这样做了:

delete  from instrumentmetadata where Id  IN (select MetadataId from instrument)

现在我想在instrumentmetadata中为仪器中的某些行添加一行(为每个乐器创建1到1个元数据)。我不知道该怎么做,因为我的instrumentmetadata的Id字段需要匹配仪器表中的MetadataId。我们正在使用fluent-migrator,如果有语法可以帮助那些,但我对纯sql很好,因为我对fluent-migrator并不是很了解。提前谢谢!

1 个答案:

答案 0 :(得分:0)

假设您知道该工具的名称,而不是它的ID,您可以查询ID,如:

insert  instrumentmetadata 
        (id, col1, col2)
select  id
,       'val1'
,       'val2'
from    instrument
where   name = 'Impulse drive replicator'