2017-02-10 34 views
0

我對SQL很陌生,所以如果我的查詢看起來不太完美,我很抱歉。我正在嘗試爲此聲明創建一個新表。我在主鍵上加入了6個表。我嘗試創建表格(但它不起作用)。如果任何人都可以請我,這將非常感激!從當前表格內部創建新表格加入6個表格

SELECT *  
FROM DATABASE.Table1 
INNER JOIN DATABASE.Table2 
ON DATABASE.Table1.PrimaryKey = DATABASE.Table2.PrimaryKey 
INNER JOIN DATABASE.Table3 
ON DATABASE.Table1.PrimaryKey = DATABASE.Table3.PrimaryKey 
INNER JOIN DATABASE.Table4 
ON DATABASE.Table1.PrimaryKey = DATABASE.Table4.PrimaryKey 
INNER JOIN DATABASE.Table5 
ON DATABASE.Table1.PrimaryKey = DATABASE.Table5.PrimaryKey 
INNER JOIN DATABASE.Table6 
ON DATABASE.Table1.PrimaryKey = DATABASE.Table6.PrimaryKey 
WHERE PrimaryKey = ‘1’ 
+0

可能給你*不明確的列*錯誤。你應該選擇你需要的列明確 – GurV

+0

'不工作'不是很有用,發佈錯誤信息。正確的選項是「CREATE TABLE AS」,所以如果顯示競爭查詢就更好。但我與GurV與該查詢,你將有六個字段稱爲'''PrimaryKey'' –

+0

謝謝你的工作 – lpd983

回答

0

所以你想要一個表中的每個源表中的所有字段,是嗎?您可以使用SELECT INTO ....:

SELECT [Field List] INTO MyNewConsolidatedTable  
FROM DATABASE.Table1 
INNER JOIN DATABASE.Table2 
ON DATABASE.Table1.PrimaryKey = DATABASE.Table2.PrimaryKey 
INNER JOIN DATABASE.Table3 
ON DATABASE.Table1.PrimaryKey = DATABASE.Table3.PrimaryKey 
INNER JOIN DATABASE.Table4 
ON DATABASE.Table1.PrimaryKey = DATABASE.Table4.PrimaryKey 
INNER JOIN DATABASE.Table5 
ON DATABASE.Table1.PrimaryKey = DATABASE.Table5.PrimaryKey 
INNER JOIN DATABASE.Table6 
ON DATABASE.Table1.PrimaryKey = DATABASE.Table6.PrimaryKey 
WHERE PrimaryKey = ‘1’ 

請注意,您將需要更換[字段列表],並列舉所有您在新表中所需的字段,否則你將有6稱爲PrimaryKey的字段,SQL不允許。