mysql - 寻找一种方法来定位数据库中以特定字符开头的值,然后删除该字符
问题描述
我有一个包含新闻站点的相对和绝对 url 的表。文章的作者可以定义指向站点上另一个页面的相对链接,或定义指向另一个站点的完整链接。由于"/"
在某些情况下默认值是他在破折号上粘贴了一个链接,并混淆了该链接是相对的还是绝对的,我们最终得到了如下链接:www.authors.site/www.authorsIntended.link
.
Normaly 我只是手动解决这个问题,但作者每篇文章最多可以使用 3 个链接,并且由于大多数受影响的链接是第 2 或第 3 链接,前提是这已经被忽视了一段时间。
我可以用这个 sql 提取所有受影响的链接:
SELECT * FROM `kalamazo_fields_values` WHERE `value` like "/http%"
虽然我想不出一种方法来从选择中只删除第一个字符。我已经很久没有使用 sql 了,所以我可能忽略了一个简单的解决方案,但是对于我的一生,我一直无法找到解决这个问题的方法。
解决方案
你可以使用更新 .. 和 substr
update `kalamazo_fields_values`
set value = substr( `value`, - (length( `value`) -1))
where `value` like "/http%
推荐阅读
- autodesk-forge - 是否可以在 Autodesk BIM360 中为自定义集成指定 OAuth 回调 URL?
- python - 从检查点恢复 BERT 模型时出现 Tensorflow AssertionError
- java - 启动 SDK 管理器会在我的 Mac 上提供 Java.NullPointerException
- json - 在推送的扩展程序中,您可以添加脚本以自动输入设置(关于 Chromebooks/Google Admin)吗?
- sql - ORA-12162: 在 MAC Big Sur 上错误地指定了 TNS:net 服务名称
- python - 无法导入声音文件 (mac)
- google-cloud-platform - LSB 启动失败:Treasure Data 的数据收集器
- java - ClassNotFoundException 与 exe 文件中包含的类
- mysql - SQL Where 子句,如何使第一个条件依赖于另一个条件
- jquery - 在到达 json 之前修改服务器上的 jquery-typehead 输入