帝国CMS模版中批量提取新闻正文内容的第一张图片作为标题缩略图的SQL语句

请 先备份数据库!文本存放的新闻正文字段不可用!

新闻正文字段作为主表的情况用以下语句:

update  phome_ecms_news  set  titlepic  =concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(newstext,  ‘src=’,  -1),’.gif’,1),”,”),’.gif’)  where  newstext  like  ‘%.gif%’  and  titlepic=”;

update  phome_ecms_news  set  titlepic  =concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(newstext,  ‘src=’,  -1),’.jpg’,1),”,”),’.gif’)  where  newstext  like  ‘%.jpg%’  and  titlepic=”;

update  phome_ecms_news  set  titlepic  =concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(newstext,  ‘src=’,  -1),’.png’,1),”,”),’.png’)  where  newstext  like  ‘%.png%’  and  titlepic=”;

新闻正文字段作为副表的情况用以下语句:

update [!db.pre!]ecms_news_data_1 a, [!db.pre!]ecms_news b set b.titlepic=concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(a.newstext,  ‘src=’,  -1),’.gif’,1),”,”),’.gif’)  where  a.newstext  like  ‘%.gif%’  and  b.titlepic=” and a.id=b.id;

update [!db.pre!]ecms_news_data_1 a, [!db.pre!]ecms_news b set b.titlepic=concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(a.newstext,  ‘src=’,  -1),’.jpg’,1),”,”),’.jpg’)  where  a.newstext  like  ‘%.jpg%’  and  b.titlepic=” and a.id=b.id;

update [!db.pre!]ecms_news_data_1 a, [!db.pre!]ecms_news b set b.titlepic=concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(a.newstext,  ‘src=’,  -1),’.png’,1),”,”),’.png’)  where  a.newstext  like  ‘%.png%’  and  b.titlepic=” and a.id=b.id;

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享