2010-04-23 133 views
31

如何將以下查詢的結果存儲到另一個表中。考慮到已經創建了適當的表格。如何將MySQL查詢結果存儲在另一個表中?

SELECT labels.label,shortabstracts.ShortAbstract,images.LinkToImage,types.Type 
FROM ner.images,ner.labels,ner.shortabstracts,ner.types 
WHERE 
    labels.Resource=images.Resource 
    AND labels.Resource=shortabstracts.Resource 
    AND labels.Resource=types.Resource; 

回答

35

可以使用INSERT INTO TABLE SELECT ....語法:

INSERT INTO new_table_name 
SELECT labels.label,shortabstracts.ShortAbstract,images.LinkToImage,types.Type 
FROM ner.images,ner.labels,ner.shortabstracts,ner.types 
WHERE labels.Resource=images.Resource AND labels.Resource=shortabstracts.Resource 
AND labels.Resource=types.Resource; 
6
INSERT INTO another_table SELECT /*your query goes here*/ 
68

如果表不存在(你如不想創建它,因爲它可能有大量的列名稱),您可以在飛行中創建它...

CREATE TABLE another_table SELECT/您的查詢是在這裏/

+3

這一個是真棒方式創建一張桌子,謝謝 – 2014-11-29 07:20:36

+2

雖然OP確實說過表格已經創建好了,但對於那些不想單獨創建一個新表格來存儲結果的人來說,這個答案是完美的。保存一個步驟。 – user766353 2015-11-10 17:43:53

5

如果那麼你的表這麼想的存在

CREATE TABLE new_table SELECT //write your query here 

如果表中存在,那麼你可以插入查詢

INSERT INTO new_table SELECT //write your query here 

詳細檢查herehere

相關問題