Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Trích xuất tên file từ đường dẫn trong MySQL

Để lấy tên file từ đường dẫn đầy đủ trong MySQL, sử dụng hàm SUBSTRING_INDEX() với phân cách là dấu gạch chéo ngược \\.

Cú pháp

SELECT SUBSTRING_INDEX(ten_cot_duong_dan, '\\', -1) AS ten_file FROM ten_bang;

Ví dụ minh họa

Tạo bảng lưu đường dẫn file:

mysql> CREATE TABLE ExtractFileNameDemo (
    -> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> AllProgrammingFilePath VARCHAR(100)
    -> );

mysql> INSERT INTO ExtractFileNameDemo(AllProgrammingFilePath) VALUES('C:\\Users\\John\\AddTwoNumberProgram.java');
mysql> INSERT INTO ExtractFileNameDemo(AllProgrammingFilePath) VALUES('E:\\CProgram\\MasterMindGame.c');
mysql> INSERT INTO ExtractFileNameDemo(AllProgrammingFilePath) VALUES('F:\\WebApplication\\WebApp.php');
mysql> INSERT INTO ExtractFileNameDemo(AllProgrammingFilePath) VALUES('C:\\Users\\John\\Desktop\\AllMySQLScript.sql');

Dữ liệu:

+----+------------------------------------------+
| Id | AllProgrammingFilePath                   |
+----+------------------------------------------+
|  1 | C:\Users\John\AddTwoNumberProgram.java   |
|  2 | E:\CProgram\MasterMindGame.c             |
|  3 | F:\WebApplication\WebApp.php             |
|  4 | C:\Users\John\Desktop\AllMySQLScript.sql |
+----+------------------------------------------+

Trích xuất tên file:

mysql> SELECT SUBSTRING_INDEX(AllProgrammingFilePath, '\\', -1) AS AllFileName 
    -> FROM ExtractFileNameDemo;

Kết quả:

+--------------------------+
| AllFileName              |
+--------------------------+
| AddTwoNumberProgram.java |
| MasterMindGame.c         |
| WebApp.php               |
| AllMySQLScript.sql       |
+--------------------------+

Lưu ý: Trên Linux/Unix, đường dẫn dùng dấu '/' thay vì '\\', câu truy vấn sẽ là SUBSTRING_INDEX(cot, '/', -1).