表復制
#復制表結構及數據到新表(不包含主鍵、索引、分區等) create table A_1 select * from A #只復制表結構到新表1 create table A_1 select * from A where 1=2; #只復制表結構到新表2 create table A_1 like A; #這種方式的復制可以復制舊表的主鍵、索引、Extra(auto_increment,字符集編碼及排序)、注釋、分區等屬性。但是不包含觸發器、外鍵等 #復制表數據到新表(A_1必須存在) insert into A_1 select * from A;#全部字段 insert into A_1 (col1,col2,...) select col1,col2,... from A;#指定字段
#完整復制
show create table A;#將舊表的創建命令列出
#我們只需要將該命令拷貝出來,更改table的名字,就可以建立一個完全一樣的表
字段復制
1 不同表復制
update B set extra = A.extra from A join B on (A.id = B.id);
update B inner join A on A.id = B.id set B.content = A.content[,A.extra = B.extra];
update B set B.sms = (select A.sms from A where A.id = B.id)
2 同表復制
update B set col1 = col2;