mysql同表拷贝数据,修改数据

在工作中有时候需要做一些数据拷贝工作,比如A,B两个表,多部分字段一样,需要把A表的一部分数据用插入B表,或者修改B表一些字段的值。

  1. insert B select A,插入B表数据,来自于A表,按照条件筛选A表的一部分字段值插入B表。
    insert into wallpaper (identification,createTime,iconUrl,downloadUrl,leadPageId,categoryId,language,sorter) 
    select uuid(),now(),iconUrl,downloadUrl,'36ab6403-0857-424e-a81f-7a3ce87d827b','005','TH',0 from wallpaper where language='MY' 

  2. update A1 from A2,A1表和A2表有一个关联的key,通过这个key把A2表中和A1表相同的数据更新。
    update t_appcenter t1, t_appcenter t2 set t1.language='TH',t1.icon=t2.icon,t1.picture1=t2.picture1,t1.downloadurl=t2.downloadurl 
    where t1.name=t2.name and t1.categoryId='002003' and t2.categoryId like '002002%'

以上两个语句在一些特定的场景很有用,做一个简单的整理。

你可能感兴趣的:(mysql数据库,MYSQL)