我想在表中选择一行并将其插入到另一个表中,如下所示:
INSERT INTO positionenneu
select *
from positionenneu_0603 where belegnummer like '4106192%'
由于重复的 id 值,我得到了一个错误。在两个表中都是 id 主键 AUTO_INCREMENT。如果没有 id 列,我该怎么做?谢谢你的回答。祝你今天过得愉快!
不要使用*
and 指定列列表,自然会省略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%'
最好指定要插入的列。这也允许您跳过 id 字段:
INSERT INTO positionenneu (field1,field2,field3)
select field1_0603, field2_0603, field3_0603
from positionenneu_0603 where belegnummer like '4106192%'