gpt4 book ai didi

mysql - 无法用 SQL 查询替换未知长度的字符串?

转载 作者:行者123 更新时间:2023-11-29 03:24:28 27 4
gpt4 key购买 nike

这可能吗?

我想做的就是在 Wordpress 数据库列中搜索一个公共(public)字符串,然后删除该字符串以及该字符串左侧的所有内容

我正在尝试以下变体:

UPDATE wp_posts
SET post_content = REPLACE(post_content, '%(1280 x 853)</p>', '')

从那以后我就意识到您不能将 REPLACE 与通配符一起使用。那么还有其他方法吗?

注意:公共(public)字符串左边的内容是可变长度的,所以我无法使用任何需要指定一定数量字符的代码。

是的,我实际上想更新数据库列中的每个适用行,而不是简单地返回一个 SELECT 语句。

任何帮助将不胜感激。我的大脑在这个问题上老了 10 年。

最佳答案

鉴于此

MariaDB [sandbox]> SELECT * FROM T;
+---------------------------+
| STR |
+---------------------------+
| AB(1280 x 853)</p>CD |
| 1234(1280 x 853)</p>56789 |
| ZYX |
+---------------------------+

这个

UPDATE T
SET STR = SUBSTRING(STR,INSTR(STR,'(1280 x 853)</p>') + LENGTH('(1280 x 853)</p>'),LENGTH(STR))
WHERE INSTR(STR,'(1280 x 853)</p>') > 0
;

结果

SELECT * FROM T;
+-------+
| STR |
+-------+
| CD |
| 56789 |
| ZYX |
+-------+

关于mysql - 无法用 SQL 查询替换未知长度的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38652215/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com