帝国CMS:如何将news主表中的数据复制到news_data_1副表中?

场景描述:

采集部分数据后,newstext字段写入时出现了问题,但页面已经生成,为避免产生404不能直接删除问题页面,现需要将主表news中的简介字段smalltext内容复制到副表news_data_1的newstext中,以代替部分数据。

 

操作步骤:

1.备份数据库【必须操作,避免数据丢失或操作出错!】

 

2.打开phpMyadmin,进入数据库命令行,输入查找命令,查看全部的有问题数据,确认数量。

 

 

3.输入一下命令:

1 UPDATE 
2   `***_ecms_news_data_1` a 
3   INNER JOIN 
4     (SELECT 
5       id,
6       smalltext 
7     FROM
8       `***_ecms_news`) b 
9     ON a.id = b.id SET a.`newstext` = b.smalltext WHERE newstext='False';

 

4.执行后,观察数据条数,与搜索出来的保持一致后,进入后台进行刷新即可。

 

 案例总结:

将A表中的数据有条件的同步到B表中某字段,

命令模式:

UPDATE 
  `tableA` a 
  INNER JOIN 
    (SELECT 
      id,
      nameB 
    FROM
      `tableB`) b 
    ON a.idA = b.idB SET a.`nameA` = b.nameB WHERE nameA='False';

说明:

tableA,即需要被写入数据的表,tableB,即需要被读取数据的表;

a.idA和b.idB,即tableA和tableB中某id值相同的字段进行对应;

表意:

将A表中的nameA字段,值为'False'的值,替换为B表中和A表ID相同的行,且字段为nameB的数据值。

 

文章参考:

mysql替换字段值为另外一个表的字段值

 

 

posted @ 2022-12-11 19:39  coderjim  阅读(138)  评论(0编辑  收藏  举报

更多知识请点击——

www.7017online.xyz