SQL 将一张表的数据复制到另一张表

时间:2025-04-24 11:26:34

destTable 需复制的表 srcTable 来源表
最基础的复制

INSERT INTO destTable SELECT * FROM srcTable 

如果两个表的字段不对应,select后面可以设置需要插入的字段,但与前面可以选择对应

INSERT INTO destTable (id,name) select id,name from srcTable

去重复制
复制表的时候,根据需求,可能需要定时器定时从该表复制数据到这张表,但又不需要之前已经复制好的数据,我们可以用not in条件来筛选

 INSERT INTO destTable SELECT * FROM srcTable WHERE id not IN (SELECT id FROM destTable ) 
INSERT INTO destTable  (id, name) SELECT id, name FROM srcTable  WHERE srcTable.id NOT IN (SELECT id FROM destTable  )