需要SQL帮助 - 如何选择行来执行插入?

时间:2008-12-04 16:57:09

标签: sql sql-server tsql

我试图让标题尽可能清晰......这是我的情景:

我有2个表(让我们称之为表A和表B)具有类似的模式。我想编写一个存储过程,从表A中选择特定的数据列,并将此数据作为新记录插入表B中。

有人能指出我在写方向上进行这样的查询吗?我不确定如何“保持”第一个查询中的值,以便我可以执行插入。

我试图避免进行查询,使用C#处理它然后再进行另一次查询......

感谢。

3 个答案:

答案 0 :(得分:6)

INSERT INTO B (Col1, Col2) SELECT Col1, Col2 FROM A

这是你的意思吗?

答案 1 :(得分:4)

您可以将此作为C#中的单个查询执行此操作:

Insert into tableB (col1, col2, col3) select col1, col2, col3 from tableA where ...

技巧是列名需要具有相同的顺序和兼容类型。

答案 2 :(得分:0)

使用SELECT INTO

SELECT
    [Col1],
    [COl2]
INTO TableA
FROM TableB