2013-07-18 41 views
0

請我需要你的幫助 我有兩個表 第一種是完全與所有日曆數據 dim_table_start(pk_date_deb,年,月,三個月,星期,日期) ,我想填補了第二臺與dim_data_start dim_table_end(pk_date_fin,年,月,三個月,周,日) 數據我想:從表中添加數據到其他表SQLSERVER

INSERT INTO [bd_disponibilite].[dbo].[dim_date_fin] 
      ([PK_Date_fin] 

      ,[Year] 

      ,[Trimester] 

      ,[Month] 

      ,[Week] 
     ) 
    VALUES 
     (select * from dbo.dim_date_Debut) 

但不工作

我怎樣才能添加的所有數據表填補第二表謝謝

回答

3

使用SELECT插入記錄時,你不需要VALUES部分:

INSERT INTO [bd_disponibilite].[dbo].[dim_date_fin] 
      ([PK_Date_fin] 
      ,[Year] 
      ,[Trimester] 
      ,[Month] 
      ,[Week] 
      ) 
SELECT * 
FROM dbo.dim_date_Debut 
+0

非常感謝喲幫助 – user2586714

+2

@Goat CO是正確的。我只想添加一些有用的信息。如果你只是在插入一次就可以了,但如果你打算重新使用它,我會關注你正在選擇的列而不是使用'Select *'。它未來證明你的代碼不會有人向'dim_date_Debut'的模式中添加一列,這會破壞你的插入。我看到這種bug很多。 – Stainy

0

如果目標不存在,你也可以使用 SELECT * INTO dbo.dim_date_fin from dbo.dim_date_De but

這對代碼更加快速,因爲它也複製模式。

如果表格存在或需要不同的屬性,山羊的答案會更好。

+0

謝謝你的回答:) – user2586714

相關問題