代码改变世界

mysql 两列互换

2018-01-02 09:38  long~~  阅读(1514)  评论(0编辑  收藏  举报

mysql 如果想互换两列的值,直接写 update 表 set col1=col2,col2=col1  这样的后果就是两列都是 col2 的值

 

注意这和sql server 是不同的,

如果想实现上述功能,添加一个自增列作为标识(必须的),

update 表 a ,表 b set a.col1=c.col2,a.col2=b.col1 where a.id=b.id

 

也可以通过修改列名来实现(脑洞大开吧)。

alter table 表 change  column col1 col3 varchar(30)--修改表列名

还可以修改位置,例如

alter table student modify name varchar(10) after id; 

alter table student modify id int(10) unsigned auto_increment first;