2014-03-06 175 views
0

我想在一個表中選擇一個行,並將其插入到另一個這樣的表:MySQL的INSERT INTO ... SELECT

INSERT INTO positionenneu 
select * 
from positionenneu_0603 where belegnummer like '4106192%' 

我,因爲重複的ID值的誤差。在這兩個表中都是id主鍵AUTO_INCREMENT。 如何在沒有id列的情況下執行此操作? 謝謝你的回答。 祝您有美好的一天!

+0

你知道插入和選擇區別嗎? – SamotnyPocitac

+0

不要'select *',那麼。 '選擇所有的領域,除了,那些,你,不要......「 –

回答

0

最好指定要插入的列。這也可以讓你跳過id字段:

INSERT INTO positionenneu (field1,field2,field3) 
    select field1_0603, field2_0603, field3_0603 
    from positionenneu_0603 where belegnummer like '4106192%' 
1

不要使用*並指定列的列表,而不是自然省略id柱:

INSERT INTO positionenneu (foo, bar, baz) 
select foo, bar, baz 
from positionenneu_0603 where belegnummer like '4106192%' 

或者當然也可以使用id如果你需要某處的列:

INSERT INTO positionenneu (foo, bar, baz, positionenneu_0603_id) 
select foo, bar, baz, id 
from positionenneu_0603 where belegnummer like '4106192%'