2013-12-11 31 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上打開連接到我以前做過的其他數據庫 –

相關問題