/

SQL,從一個表複製數據到另一個表

SQL,從一個表複製數據到另一個表

其中一個維護任務:將數據從一個表複製到另一個表。

你可以這樣將一個表的所有元素複製到另一個表中:

1
2
INSERT INTO some\_table 
SELECT \* FROM other\_table

當然,如果你只想選擇一些數據,你可以這樣寫:

1
2
INSERT INTO some\_table 
SELECT \* FROM other\_table WHERE list=94

如果你要將數據複製到的表已經有數據,你可能會遇到主鍵重複的問題。

為了讓表自動填充主鍵的自增值,你可以在選擇數據時排除主鍵列:

1
2
INSERT INTO some\_table (`age`, `name`, `email`)
SELECT `age`, `name`, `email` FROM other\_table

在我的案例中,id 是主鍵列,我將其排除在外。

tags: [“SQL”, “database”, “data copying”]