这甚至可能吗?
我想要做的就是在Wordpress数据库列中搜索一个公共字符串,然后删除字符串和字符串左侧的所有字符串。
我正尝试以下各种变体:
UPDATE wp_posts
SET post_content = REPLACE(post_content, '%(1280 x 853)</p>', '')
我已经意识到你不能将REPLACE与通配符一起使用。那么有没有其他方法可以做到这一点?
注意:公共字符串左侧的内容长度不一,所以我无法使用任何需要指定一定数量字符的代码。
是的,我实际上想要更新数据库列中的每个适用行,而不是简单地返回SELECT语句。
非常感谢任何帮助。我的大脑在这个问题上老了10年。
答案 0 :(得分:0)
希望我清楚地理解你的问题,你可以试试这个:
date | name | record
7/27/16 | john | H
7/27/16 | john | P
7/28/16 | john | P
7/28/16 | john | L
答案 1 :(得分:0)
试试这个,
UPDATE wp_posts SET post_content = SUBSTR(post_content, 1, (LENGTH(post_content) - 16));
如果有任何进一步改进的查询,我会在评论中发帖。
答案 2 :(得分:0)
鉴于此
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 |
+-------+