全球主机交流论坛备用站

 找回密码
 立即注册

QQ登录

只需一步,快速开始

全球云38元起免备案V2EX搬瓦工VPS
SEO查询超级PING网站测速
Virmach特价鸡乌云漏洞吾爱破解
查看: 169|回复: 12

mjj帮写个sql命令,感谢!

[复制链接]

31

主题

91

帖子

269

积分

中级会员

Rank: 3Rank: 3

积分
269
发表于 2023-10-23 21:20:15 | 显示全部楼层 |阅读模式
20230417
本帖最后由 salahy 于 2023-10-23 21:23 编辑

mysql怎么批量把含有下列内容的文章替换,最好是sql语句

</p>随机的文字<span>转载于xx网</span>

替换成
</p><h3>随机的文字<h3>


红色的是不固定的文字,黑色的是固定的
MJJ,你的签名掉了~~~
回复

使用道具 举报

61

主题

356

帖子

945

积分

高级会员

Rank: 4

积分
945
发表于 2023-10-23 21:21:54 | 显示全部楼层
不给钱谁管你
MJJ,你的签名掉了~~~
回复 支持 反对

使用道具 举报

14

主题

506

帖子

1468

积分

金牌会员

Rank: 6Rank: 6

积分
1468
发表于 2023-10-23 21:22:21 | 显示全部楼层
不如问问chatgpt?
MJJ,你的签名掉了~~~
回复 支持 反对

使用道具 举报

23

主题

446

帖子

1107

积分

金牌会员

Rank: 6Rank: 6

积分
1107
发表于 2023-10-23 21:22:43 | 显示全部楼层
很简单,建议直接交给chatgpt
MJJ,你的签名掉了~~~
回复 支持 反对

使用道具 举报

21

主题

1540

帖子

4067

积分

论坛元老

Rank: 8Rank: 8

积分
4067
发表于 2023-10-23 21:24:18 | 显示全部楼层
什么数据库 直接问gpt不就好了
MJJ,你的签名掉了~~~
回复 支持 反对

使用道具 举报

25

主题

1万

帖子

2万

积分

论坛元老

Rank: 8Rank: 8

积分
24085
发表于 2023-10-23 21:24:37 | 显示全部楼层
付费服务 
MJJ,你的签名掉了~~~
回复 支持 反对

使用道具 举报

2

主题

2981

帖子

6796

积分

论坛元老

Rank: 8Rank: 8

积分
6796
发表于 2023-10-23 21:24:55 | 显示全部楼层
你可以使用MySQL的`UPDATE`语句结合`REPLACE`函数来批量替换含有指定内容的文章。假设你的文章存储在一个名为`articles`的表中,文章内容位于一个名为`content`的列中,以下是一种可能的SQL语句示例:

```sql
UPDATE articles
SET content = REPLACE(content, '</p>随机的文字<span>转载于xx网</span>', '</p><h3>随机的文字<h3>');
```

这个SQL语句会更新`articles`表中的`content`列,将所有包含`</p>随机的文字<span>转载于xx网</span>`的内容替换为`</p><h3>随机的文字<h3>`。

请注意,这个SQL语句假设文章内容在`content`列中,你需要根据你的实际情况修改表名和列名。确保在运行这个SQL语句之前,先备份你的数据,以防出现意外情况。
MJJ,你的签名掉了~~~
回复 支持 反对

使用道具 举报

31

主题

91

帖子

269

积分

中级会员

Rank: 3Rank: 3

积分
269
 楼主| 发表于 2023-10-23 21:26:27 | 显示全部楼层
秋秋0827 发表于 2023-10-23 21:22
很简单,建议直接交给chatgpt

回答的都是错的
MJJ,你的签名掉了~~~
回复 支持 反对

使用道具 举报

31

主题

91

帖子

269

积分

中级会员

Rank: 3Rank: 3

积分
269
 楼主| 发表于 2023-10-23 21:22:00 | 显示全部楼层
0.0 发表于 2023-10-23 21:24
你可以使用MySQL的`UPDATE`语句结合`REPLACE`函数来批量替换含有指定内容的文章。假设你的文章存储在一个名 ...

大佬,机器就是机器还是不如人脑,回答的都是错的
MJJ,你的签名掉了~~~
回复 支持 反对

使用道具 举报

0

主题

1

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2023-10-23 21:28:43 | 显示全部楼层
您可以使用MySQL的REPLACE函数来批量替换文章内容。下面是一个示例SQL语句:

sql
UPDATE your_table SET your_column = REPLACE(your_column, '</p>随机的文字<span>转载于xx网</span>', '</p><h3>随机的文字<h3>')
WHERE your_column LIKE '%</p>随机的文字<span>转载于xx网</span>%';
请注意将上述语句中的your_table替换为您的表名,your_column替换为包含文章内容的列名。此外,如果您的文章内容包含其他特殊字符,可能需要对SQL语句进行调整。

在执行该SQL语句之前,请务必备份相关数据,以防误操作造成数据丢失。
salahy 发表于 2023-10-23 21:28
大佬,机器就是机器还是不如人脑,回答的都是错的


在MySQL中,你可以使用 REPLACE 函数或 REGEXP_REPLACE 函数来替换字符串。但是,因为你的需求中有随机的内容,你需要用到正则表达式。在MySQL 8.0及以上版本,你可以使用 REGEXP_REPLACE 函数。以下是一个例子:

```sql
UPDATE your_table
SET your_column = REGEXP_REPLACE(your_column, '</p>(.*)<span>转载于xx网</span>', '</p><h3>\\1<h3>')
WHERE your_column REGEXP '</p>.*<span>转载于xx网</span>';
```

这个语句会找到所有包含 `</p>随机的文字<span>转载于xx网</span>` 格式的字符串,并替换为 `</p><h3>随机的文字<h3>`。这里的 `\\1` 是一个反向引用,代表正则表达式中的第一个括号内匹配的内容,即“随机的文字”。

注意:

1. 你需要替换 `your_table` 和 `your_column` 为你的实际表名和列名。
2. 这个操作会直接修改你的数据,所以在执行前最好备份你的数据。
3. 正则表达式可能会有性能问题,如果你的数据量非常大,需要考虑其他的解决方案。
MJJ,你的签名掉了~~~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

展开

QQ|Archiver|手机版|小黑屋|全球主机交流论坛备用站

GMT+8, 2024-5-18 23:53 , Processed in 0.047685 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表