其中一個維護任務:將數據從一個表複製到另一個表。
你可以這樣將一個表的所有元素複製到另一個表中:
INSERT INTO some\_table
SELECT \* FROM other\_table
當然,如果你只想選擇一些數據,你可以這樣寫:
INSERT INTO some\_table
SELECT \* FROM other\_table WHERE list=94
如果你要將數據複製到的表已經有數據,你可能會遇到主鍵重複的問題。
為了讓表自動填充主鍵的自增值,你可以在選擇數據時排除主鍵列:
INSERT INTO some\_table (`age`, `name`, `email`)
SELECT `age`, `name`, `email` FROM other\_table
在我的案例中,id
是主鍵列,我將其排除在外。