2013-12-19 448 views
-1

我對SQL的知識非常少,但會盡我所能解釋問題。使用SELECT INTO語句的SQL查詢

我有5個DB表格說MS SQL Server中的TAB1,TAB2,TAB3,TAB4,TAB5。我正在研究一箇中間件工具來集成到一個數據庫系統。爲此,我需要從DB系統中檢索表格。

TAB1: MAT_ID, A1, A2, A3, A4 

TAB2: MAT_ID, B1, B2 

TAB3: MAT_ID, C1, C2, C3, C4, c5 

TAB4: MAT_ID, D1, D2, D3, D4, D5, D6, D7 

TAB5: MAT_ID, E1, E2, E3 

我得到的結構應如下

MAT_ID,A1,A2,A3,A4 
MAT_ID,B1,B2 
MAT_ID,C1,C2,C3,C4,c5 
MAT_ID, D1, D2, D3, D4, D5, D6, D7 
MAT_ID, E1, E2, E3 

我的意思是所有的行顯示應該得到追加。每個表格中的列數將有所不同。另外,我需要對上述內容進行如下額外要求。

MAT_ID將有像AA值,BB,CC,DD,EE等..

所以,當我跑我的SQL查詢的情況下,我需要與個體MAT_ID行應該得到附後如下。

AA,A1,A2,A3,A4 
AA,B1,B2 
AA,C1,C2,C3,C4,c5 

MAT_ID的值應該是動態的,我不能在查詢中提及它。

我檢查了InnerJoin,但它希望按預期工作。

我可以在確定數據庫表中不同MAT_ID字段時添加一個額外字段。另外讓我知道你是否可以提供其他選項。 SELECT INTO也是我正在尋找的選項之一。

+2

你想要一個表中的所有五個表的內容?那麼你想要使用所有的聯合。你的列的數據類型是什麼?你試過什麼了? –

回答

0

試試這個,不知道這是你需要的。只是猜測根據您的問題

select MAT_ID, A1, A2, A3, A4, null as a5, null as a6, null as a7 from TAB1 
union all 
select MAT_ID, B1, B2, null, null, null,  null,  null  from TAB2 
union all 
select MAT_ID, C1, C2, C3, C4, c5,   null,  null  from TAB3 
union all 
select MAT_ID, D1, D2, D3, D4, D5,   D6,   D7   from TAB4 
union all 
select MAT_ID, E1, E2, E3, null, null,  null,  null  from TAB5 
+0

嗨我試着與TAB1和TAB2上面,但我的結果像下面。 'Row1:TAB1和Row2的所有條目:TAB2的所有值,但字段名稱爲TAB1' – user3115214

+0

是的。每列只能有一個字段名稱。你可以給他們個人名字,但不是每行。請提供一個結果應該是什麼樣的例子,甚至一個excel的截圖也會有幫助。只需編輯您的問題以包含更多信息。 –

+0

我想添加一個截圖,但不幸的是我沒有足夠的點來添加圖像。 – user3115214