2012-12-30 70 views
2

我如何有一個名爲「藝術家」有三列的表:我插入主ID的其他表到一個新表

artist_id {PK} | artist_name | artist_url 

大約有此表500+藝術家。

我希望能夠將所有主鍵複製到名爲「artist_to_store」的表中。該表將有兩列:

artist_id {PK} | store_id. 

商店ID將永遠等於0

我想這個查詢會工作:

INSERT INTO artist_to_store SET artist_id = (SELECT artistr_id FROM artist) AND store_id = 0 

相反,它與錯誤#1242 reuturns - 子查詢返回多於一行。

我知道錯誤意味着什麼,所以沒有人需要解釋它。但是有人可以告訴我,我是如何從藝術家表中將所有artist_id的所有內容都提交給另一個表的?

謝謝,新年快樂,當它到達:)

彼得

回答

3

試試這個::

INSERT INTO artist_to_store(artistId, storeId) SELECT artistr_id,0 FROM artist 
+0

哪裏是在價值關鍵字插入查詢? –

+0

作者還應該知道如果使用InnoDB引擎自動增量鎖定。 –

+0

伊戈爾季莫申科:我沒有問增量,我問到從一個表插入數據到下一個。增量設置爲自動。它會以1的倍數遞增。 @Sashi康德,謝謝你,它出色地工作。 D:D –

2
INSERT INTO artist_to_store (SELECT artistr_id,0 FROM artist); 

試試這個

+0

會導致什麼OP要求 –

+0

這個查詢有什麼問題? – Mari

+0

Ohh你現在編輯了,所以刪除我的downvote –

相關問題