SUBSTRING_INDEX
函数,通过指定的分隔符获取最后一个元素。在这种情况下,分隔符是斜杠。如果要使用反斜杠,可以简单地使用"\\"
。SELECT
Path,
SUBSTRING_INDEX(Path, '/', -1) AS FileName
FROM
files
示例结果行:
路径 = downloads/apps/file1.exe
文件名 = file1.exe
使用上面的答案,可以将其制作成一个mysql函数:
CREATE DEFINER=`root`@`%` FUNCTION `basename`(path VARCHAR(512)) RETURNS varchar(512) CHARSET latin1
BEGIN
return SUBSTRING_INDEX(SUBSTRING_INDEX(path, '/', -1), '\\', -1);
END