php - MYSQL - 用于 SQL 查询的正则表达式

标签 php mysql sql regex

如何使用正则表达式修改下面的 SQL 查询以获得此结果(文件夹结构不是静态的)?

SQL 查询:

SELECT name, identifier 
FROM mydb 
WHERE uid = 123 and type='image'

结果

COLUMN: name
ROW:my_pic.jpg
COLUMN: identifier
ROW:/global/images/example/my_pic.jpg

我需要的是这个结果删除列标识符最后一个斜杠之后的所有内容

COLUMN: name
ROW:my_pic.jpg
COLUMN: identifier
ROW:/global/images/example/

最佳答案

这是一种方法:

select left(col, length(col) - length(substring_index(col, '/', -1)))

它会查找最后一个 '/' 之后所有内容的长度,然后删除这些字符。

关于php - MYSQL - 用于 SQL 查询的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28968673/

相关文章:

mySQL - 以任一顺序选择 2 列的不同组合

java - 检查特殊字符在 Java 中好还是在 MYSQL 中好?

mysql - 待检索列数据精确匹配

mysql - 根据数量和出现次数返回最频繁的 x

mysql - SQL 中的多个 LEFT JOIN 运行缓慢。我该如何优化它?

Javascript - 在错误条件下运行代码

php - 无法运行查询 : SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens

mysql - OR 其他条件之间的冲突

php - Unix 时间戳转换回夏令时

php - 检查两个单独行的列,如果相同则返回 true