Dùng SUBSTRING_INDEX(column, '/', -1) để lấy phần sau dấu / cuối cùng (tên file/thư mục).
Cú pháp:
SELECT SUBSTRING_INDEX(yourColumnName, '/', -1) AS anyAliasName FROM yourTableName;
Tạo bảng:
mysql> CREATE TABLE selectTextAfterLastSlashDemo (
-> UserId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> UserPathDirectory VARCHAR(200)
-> );
Chèn đường dẫn:
mysql> INSERT INTO selectTextAfterLastSlashDemo(UserPathDirectory) VALUES
-> ('C:/MyFolder1/MyEntityFramework'),
-> ('D:/MySpringFrameworkDemo'),
-> ('E:/Java/MyRootFolder/Source/AllHibernateDemo'),
-> ('C:/Program Files/MySQL/Server 8.0'),
-> ('C:/John/Folder1/Folder2');
Hiển thị dữ liệu:
+--------+----------------------------------------------+ | UserId | UserPathDirectory | +--------+----------------------------------------------+ | 1 | C:/MyFolder1/MyEntityFramework | | 2 | D:/MySpringFrameworkDemo | | 3 | E:/Java/MyRootFolder/Source/AllHibernateDemo | | 4 | C:/Program Files/MySQL/Server 8.0 | | 5 | C:/John/Folder1/Folder2 | +--------+----------------------------------------------+
Truy vấn lấy phần sau dấu / cuối:
mysql> SELECT SUBSTRING_INDEX(UserPathDirectory, '/', -1) AS TextAfterLastSlash FROM selectTextAfterLastSlashDemo;
Kết quả:
+-----------------------+ | TextAfterLastSlash | +-----------------------+ | MyEntityFramework | | MySpringFrameworkDemo | | AllHibernateDemo | | Server 8.0 | | Folder2 | +-----------------------+