三种方式怎么选要点
- 只要结构用 CREATE TABLE 新 LIKE 旧,索引一并复制
- 结构和数据都要用 AS SELECT,但会丢掉索引约束
- 表已存在只搬数据用 INSERT INTO 新 SELECT
- LIKE 后接 INSERT SELECT 可实现'带索引的整表复制'
- 大表复制注意锁源表与临时空间,分批更稳
- 归档场景优先 INSERT SELECT 加时间条件
三种方式怎么选对照
| 需求 | 写法 | 是否带索引 | 是否带数据 |
|---|---|---|---|
| 只复制结构 | CREATE TABLE 新 LIKE 旧 | 是 | 否 |
| 结构加数据 | CREATE TABLE 新 AS SELECT | 否 | 是 |
| 仅搬数据 | INSERT INTO 新 SELECT | 沿用目标表 | 是 |
避坑提醒:需要'结构+数据且保留索引'时,没有单条语句能一步到位:先 LIKE 复制结构,再 INSERT SELECT 灌数据。