优晟SEO

您现在的位置是:首页 > CMS教程 > 帝国cms > 正文

帝国cms

帝国CMS批量提取内容的第一张图片为标题图片的SQL语句是什么?

佚名 2024-08-26帝国cms
通过SQSL语句批量提取新闻内容字段newstext的第一张图片为标题图片,对于文章模型的内容存文本的情况下无效。执行步骤:系统 - 数据库备份与恢复 - 执行SQL语句 中执行以下语句,注意请一定要提前备份以防万一,因为字段存的……

帝国CMS批量提取内容的第一张图片为标题图片的SQL语句是什么?

通过SQSL语句批量提取新闻内容字段newstext的第一张图片为标题图片,对于文章模型的内容存文本的情况下无效。

执行步骤:系统 - 数据库备份与恢复 - 执行SQL语句 中执行以下语句,注意请一定要提前备份以防万一,因为字段存的表的不同所以区分执行语句,下面以新闻模型为例。

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

update[!db.pre!]ecms_newssettitlepic=concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(newstext,'src=',-1),'.gif',1),'"',''),'.gif')wherenewstextlike'%.gif%'andtitlepic='';update[!db.pre!]ecms_newssettitlepic=concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(newstext,'src=',-1),'.jpg',1),'"',''),'.gif')wherenewstextlike'%.jpg%'andtitlepic='';update[!db.pre!]ecms_newssettitlepic=concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(newstext,'src=',-1),'.png',1),'"',''),'.png')wherenewstextlike'%.png%'andtitlepic='';

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

update[!db.pre!]ecms_news_data_1a,[!db.pre!]ecms_newsbsetb.titlepic=concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(a.newstext,'src=',-1),'.gif',1),'"',''),'.gif')wherea.newstextlike'%.gif%'andb.titlepic=''anda.id=b.id;update[!db.pre!]ecms_news_data_1a,[!db.pre!]ecms_newsbsetb.titlepic=concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(a.newstext,'src=',-1),'.jpg',1),'"',''),'.jpg')wherea.newstextlike'%.jpg%'andb.titlepic=''anda.id=b.id;update[!db.pre!]ecms_news_data_1a,[!db.pre!]ecms_newsbsetb.titlepic=concat(replace(SUBSTRING_INDEX(SUBSTRING_INDEX(a.newstext,'src=',-1),'.png',1),'"',''),'.png')wherea.newstextlike'%.png%'andb.titlepic=''anda.id=b.id;

注意的是有标题图片了的也会被提取第一张图片,执行无差别。以上就是帝国CMS批量提取新闻内容的第一张图片为标题图片的SQL语句。

标签图片帝国第一张