2015-09-25 32 views
0

所以我想從一個數據庫到另一個數據庫導入一些數據,並使用最後插入的ID它是這樣的:MySQL的 - 在多個刀片

ID, title, content 

第一個表,我可以導出罰款,但ID是auto_increment,並且我希望新數據庫具有其唯一ID,而不是由插入複製。 事情是這些文章有一個範疇,它是:

post, category 

如果帖子是posts.ID。現在,我想要做的是:

INSERT INTO new_db.posts (title, content) VALUES SELECT db1.title, db1.content FROM old_db.posts db1 

但我希望每個人都從類別表中獲得他們各自的類別。 我不確定我是否在解釋自己,我希望如此。 謝謝!

+0

我認爲樣本數據和期望的結果將有助於解釋您正在嘗試做什麼。 –

+0

INSERT INTO new_db.posts(title,content)SELECT db1.title,db1.content FROM old_db.posts db1 –

回答

0

你還沒有說哪裏的類別欄是怎麼回事,但如果是在同一個表,你可以這樣做:

INSERT INTO new_db.posts (title, content, category) 
SELECT db1.title, db1.content, c.category 
FROM old_db.posts db1, old_db.categories c 
WHERE db1.ID = c.post 

如果你想有一個新的ID這是自動遞增,那麼你將需要獲得初始INSERT的結果(ID),並將其用於類別表中的新INSERT

+0

這是另一個表,就像我說的,post(引用posts.ID)和category。 – Dogmatics