2016-03-15 79 views
0

我有三個表 - T1T2 & T3我需要一個存儲過程嗎

對於每一行T1我需要從第三個表T3獲取從該表中的所有數據和其他一些欄目,並插入到T2 //這是T1

分區的版本,我需要存儲這個程序?

+2

如何添加數據?它一次只有一行,還是多行的批量上傳?數據如何插入到T1中?直接從Java /其他一些非數據庫代碼? – Boneist

回答

3

不,你不這樣做,它可以用一個簡單的插入是選擇做:

INSERT INTO T2 
SELECT t1.*,t3.col1,t3.col2... 
FROM T1 
LEFT OUTER JOIN t3 
ON(t1.ID? = t3.ID?) 

當然,你必須改變此查詢到你想要的任何列,以及連接條件之間的關係表格。

+0

謝謝..有點幫助,這裏有一些問題 http://stackoverflow.com/questions/36008450/select-each-row-and-insert-into-another-table –

+0

雖然你可以用SQL來做到這一點,我個人會編寫一個存儲過程來處理T1和T2的插入。這樣,如果有其他應用程序需要做同樣的事情,那麼您有一個可重用模塊,並且不必在其他應用程序中複製邏輯。 – Boneist