将动态行数插入SQL Server

时间:2009-02-19 05:21:04

标签: sql sql-server tsql dynamic-queries

有没有办法在给定查找值的情况下从sql server(.sql脚本)中插入动态行数,并为每个插入设置一列? 我想在另一个表中附加一行与每行的外键。

例如:

table 1:
1 j k l m n 2-(fk)
2 j k l m n 3-(fk)
3 k u y k l 2-(fk)


table 2:
2 hi you
3 hey ho

现在说我想在表1中添加2行,表2中的fk值为2和3。

所以决赛桌看起来像是:

table 1:
1 j k l m n 2-(fk)
2 j k l m n 3-(fk)
3 k u y k l 2-(fk)
4 a a a a a 3-(fk)
5 a a a a a 2-(fk)

使用编程语言,这很容易。伪:     对于(表2中的行)DO         插入表1'a a a a a rows.id'

如何在sql server中完成?

编辑:

对于表2中的每一行,获取它的id,将其设置为表1中的fk,然后插入它。

2 个答案:

答案 0 :(得分:3)

insert [table 1]
select 'a','a',a','a','a', fk 
from [table 2]

答案 1 :(得分:-1)

好的,有人来找我并告诉我这样做的方法......

insert into table_one  
select col1 = 'a',  
   col2 = 'b',  
   col3 = 'c',  
   col4fk,  
   col5 = 'k'  
from table2

它只从表2中选择col4fk,只要它与表1中的列具有相同的名称。