评论

收藏

[MySQL] 在MySQL中来平移对应的行

数据库 数据库 发布于:2021-07-05 09:55 | 阅读数:192 | 评论:0

  以前写的,笨办法,不知道大家有什么好的办法没有?

表结构:
/*DDL Information For - t_girl.yld1*/
-------------------------------------

Table   Create Table                                             
------  ---------------------------------------------------------
yld1    CREATE TABLE `yld1` (                                    
          `id` int(11) default NULL,                             
          `uid` int(11) default NULL                             
        ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC


初始数据:

query result(4 records)
iduid
(NULL)6
(NULL)5
2(NULL)
1(NULL)

执行过程:
create table yld2 select * from yld1

delete from yld1 where id is null;
delete from yld2 where id is not null;
alter table yld1 add autoid int not null AUTO_INCREMENT primary key;
alter table yld2 add autoid int not null AUTO_INCREMENT primary key;

update yld1 as a,yld2 as b set a.uid = b.uid where a.autoid = b.autoid;

alter table yld1 drop autoid;

drop table yld2;


最终结果:
query result(2 records)
iduid
26
15


  
关注下面的标签,发现更多相似文章