我有table1,table2 =>所有字段都是相同的,除了table2 two有一个额外的字段,它是table1的FK
**table1** *ID*,content,status
**table2** *ID*,content,status,tid
所以tid = table1 id。
我需要将table1中的一行复制到table2,所以基本上table2将是table1的备份。我可以使用mysql,然后php,然后再次使用mysql,我想知道你是否可以在mysql上有一个更简单的解决方案:)
希望它不要太复杂
答案 0 :(得分:1)
如果您想将table1
中的每一行复制到table2
,您可以这样做:
INSERT INTO table2 (id, content, status, tid)
SELECT id, content, status, id FROM b;
如果table2
不为空,您可以添加ON DUPLICATE KEY...
子句来处理冲突。
修改
如果您只想复制一行,可以添加WHERE
子句:
INSERT INTO table2 (id, content, status, tid)
SELECT id, content, status, id FROM b WHERE id=123;
答案 1 :(得分:0)
INSERT INTO table2 (content, status, tid) SELECT content, status, ID FROM table1