mysql 复制数据修改后插入到同一张表

最近在某国企用PHP做联合开发(悲催的我.NET都还没搞明白),遇到一个这样的问题,就是要复制一条数据修改后插入到数据所在的表中。

之前我们公司用CodeFirst,直接把从数据库取出数据放到Model中,把Model的主键和要修改的数据修改,然后再插入。因为有框架,所以只需要三行代码可以搞定。

但是由于不熟悉php,怕写底层的函数会出错(好吧,其实是偷懒不想研究),也不想一个一个去赋值,所以就想着能不能用一个sql语句搞定。

最后百度了半天,找到一个方法:

//复制一条数据

insert into 表名 SELECT * FROM 表名 WHERE 字段='XXX';

这个适用于复制没有主键唯一约束的表

//复制修改数据

insert into 表名 SELECT 字段名1,‘修改的字段’,字段名2....(这里要列出表里面所有的字段) FROM 表名 WHERE 字段='XXX';

 

posted @ 2017-04-25 23:04  阳光下的我们  阅读(2139)  评论(0)    收藏  举报