mysql - 删除字符串中子目录的sql查询

标签 mysql

我想做一个更新查询,更改具有不同日期样式目录的多个条目的图像路径。 基本上每个单独的图像都位于一个以特定日期标记命名的文件夹中

所以它们的字符长度都是相同的。

因此它将更新数据库中的行

/wp-content/uploads/20180711125044/sample.jpg
/wp-content/uploads/20180812125044/sample_2.jpg

对此:

/wp-content/uploads/sample.jpg
/wp-content/uploads/sample_2.jpg

(删除“uploads”和“jpg”名称之间的文件夹)

最佳答案

您可以使用SUBSTRING_INDEX() :

SET @val ='/wp-content/uploads/20180711125044/sample.jpg';
SELECT
  CONCAT(
    SUBSTRING_INDEX(@val, '/uploads/', 1),
    '/uploads/',
    SUBSTRING_INDEX(@val, '/', -1)
  ) AS result;

请参阅demo .

关于mysql - 删除字符串中子目录的sql查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56499186/

相关文章:

python - SQLalchemy:更改未提交到数据库

php - 应用程序流程 + 触发器。好吗?

php - 如何在php中对数据库模型进行json编码?

mysql - 通过左连接表的 id 从表中选择行

php - 如何在Laravel中过滤每个projectId的taskId?

mysql - 违反 UNIQUE KEY 时获取一行的 id

mysql - 从“不在”中选择 - 除外

mysql - 从 1 个提供商表中显示 2 个单独的提供商名称

MySQL:单个查询来计算 2 个表中的多个列

php - 带街道地址的 Mysql DB - 我想按名称排序然后按数字排序?