【发布时间】:2017-04-06 08:12:56
【问题描述】:
我有两个表 - 我希望能够从 tbl1 中选择数据并将其插入到 tbl2 中。现在这是交易 - Tbl1 大约有 30 个字段。该表中有三列不在 tbl2 中。我没有单独指定每个字段,而是试图看看我是否有任何可能的方法来做这样的事情......
Insert into Tbl2 SELECT * (but three fields) from tbl1 where value='value'
或者做类似的事情
Insert Into tbl2 SELECT Field1, Field2
但是因为我将在每种情况下为许多不同的表执行此操作,所以 tbl1 将有 3 个额外的字段,然后是相应的 tb2 - 我正在尝试以尽可能简单和最干净的方式进行操作
有什么建议吗?
【问题讨论】:
-
为什么所有这些列,以及为什么要移动数据?
-
@jarlh 需要给用户一个选项来撤消他们以前做过的事情-
-
如果你想做正确的,指定列!
-
您应该始终指定您的列。如果您想保存一些输入,您可以将列“文件夹”从 SSMS 拖到查询窗口,它会将所有列名带入您的查询中。然后只需删除您不想要的三列。
-
在对象资源管理器中右键单击源表-单击
select top N rows,删除您不想要的3列,复制并粘贴。完成。
标签: sql sql-server select insert