2013-12-11 35 views
0

我具备这些多列的表1 -将数据从表格1复制到表格2,并将日期插入到7天前或14天后?

A 
B 
C 

现在我具备这些多列

A 
B 
C 
D 
E 

在表2一表2我有d为created_date和E为updated_date。现在我想将table1数据导入到table2中,我已经将table1数据导出到CSV文件中。

最初我已经做了D列和E列now(),所以当我使用COPY command将table1的数据复制到table2时,日期自动插入,这是当前日期。

现在我在找的是,每当我从复制表1的任何数据参见表2,created_date这是Dupdated_date其是上表2 E应设置为now()-interval '7 days'

我已经将table1数据导入到CSV文件中,如上所述,现在我需要将此CSV文件导入到table2中,以便在使用COPY命令插入时,我应该能够将created_date和updated_date设置为7 days回或14 days回等。

基本上,我想这是可配置的,假设如果我使用COPY命令,然后根据情况,如果我需要插入数据7天回来,然后当我复制数据,我应该设置该日期应该是7天后,14天后或30天后从命令行。

有什么办法可以做到吗?任何帮助将非常感激..

更新: -

我忘了提,这两个表都在不同的数据库。因此,我们不能插入上选择查询我想基础..

回答

1
INSERT INTO [TARGET_DB].[dbo].Table2 
        (adID, CampaignName, EndDate) 
SELECT  adID, [CampaignEndDate], DATEADD(d, -14, [CampaignEndDate]) as EndDate 
FROM [SOURCE_DB].[dbo].Table1 

代替-14天回


如果DB位于同一台服务器使用上述

更新你做其他数据库不同的服务器连接串

使用
OPENQUERY(处理SQL)
http://technet.microsoft.com/en-us/library/ms188427.aspx

连接OPENDATASOURCE
http://technet.microsoft.com/en-us/library/ms179856.aspx

+0

我忘了提,这两个表都在不同的数据库。所以我们不能在选择查询时插入基础我猜.. – AKIWEB

+0

是的,你可以做到这一点
答:你可以使用SELECT INTO构建新表并添加索引之后
B.您可以先定义您的模式,然后使用INSERT INTO插入表2选择是从表1然后导入到另一个数据库;我可以在2个小时内发布解决方案我已经在我的其他PC上打开连接到我以前做过的其他数据库 –

相关问题