Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

การดึงชื่อไฟล์จากพาธเต็มใน MySQL ด้วย SUBSTRING_INDEX()

ใช้ฟังก์ชัน SUBSTRING_INDEX() เพื่อแยกชื่อไฟล์จากพาธเต็ม

ไวยากรณ์

SELECT SUBSTRING_INDEX(yourColumnName, '\\', -1) as anyAliasName FROM yourTableName;

ใช้ \\ เป็น delimiter และ -1 หมายถึง取部分หลัง delimiter ตัวสุดท้าย

ตัวอย่างการใช้งาน

สร้างตาราง:

mysql> create table ExtractFileNameDemo (
    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> AllProgrammingFilePath varchar(100)
    -> );
Query OK, 0 rows affected (0.50 sec)

เพิ่มข้อมูลพาธไฟล์:

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');

ข้อมูลเดิม:

+----+------------------------------------------+
| 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 |
+----+------------------------------------------+

ดึงชื่อไฟล์:

mysql> select SUBSTRING_INDEX(AllProgrammingFilePath, '\\', -1) as AllFileName from ExtractFileNameDemo;

ผลลัพธ์:

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

หมายเหตุ: สำหรับ Linux/Unix ใช้ '/' แทน '\\'