我需要插入(每月备份我将恢复到我的source_database中)到dest_database中,并添加一个新的DATE字段,该字段将说明来自哪个月份的数据。所以最后一切都在dest_database中,DATE字段指定它所属的月份。
我需要做什么?
INSERT INTO dest_table
(SELECT *
FROM source_table)
答案 0 :(得分:2)
您需要指定列名称并添加额外列。
请参阅以下sql中的 new_date_col1 。
INSERT INTO dest_table ( old_col1, old_col2, new_date_col1)
SELECT old_col1, old_col2, getdate() FROM source_table
答案 1 :(得分:0)
假设您使用与source_table相同的字段和数据类型创建了dest_table,您只需要在插入之前向该表添加一列。
create table dest_table
(column1 <datatype>,
...,
...,
LoadDate datetime);
GO
insert into dest_table (column1,...,LoadDate)
select
column1,
...,
getdate()
from source_table
或者,简单地
select
column1,
...,
getdate()
into dest_table
from source_table
答案 2 :(得分:0)
您可以执行此操作,如下所示
INSERT INTO newTable (col1, col2, col3, DATE_Field)
SELECT column1, column2, column3, GETDATE()
FROM oldTable
答案 3 :(得分:0)
如果source_table
和dest_table
的表格定义除了额外的TimeStamp
列之外相同,您可以这样做:
INSERT INTO dest_table
SELECT *,MONTH(GETDATE())
FROM source_table
否则,您需要指定映射关系,例如:
INSERT INTO dest_table (col1,col2...,Date_Column)
SELECT col3,col4...,MONTH(GETDATE())
FROM source_table