如何让 MySQL 查询结果包含文件扩展名?


为了在 SQL 查询结果中获取文件扩展名,可以使用 SUBSTRING_INDEX() 函数。

语法如下

select substring_index(yourColumnName,'.',-1) as anyAliasName from yourTableName;

为了理解上面的语法,让我们创建一个表。以下查询用于创建表

mysql> create table getFileExtensionDemo
   -> (
   -> File_Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> File_Name text
   -> );
Query OK, 0 rows affected (0.53 sec)

使用 insert 命令向表中插入一些记录。

查询如下

mysql> insert into getFileExtensionDemo(File_Name) values('John.AllMySQLConcept.doc');
Query OK, 1 row affected (0.17 sec)
mysql> insert into getFileExtensionDemo(File_Name) values('Introductiontojava.txt');
Query OK, 1 row affected (0.17 sec)
mysql> insert into getFileExtensionDemo(File_Name) values('C and C++.AllDataStructureandAlgorithm.pdf');
Query OK, 1 row affected (0.14 sec)
mysql> insert into getFileExtensionDemo(File_Name) values('C.Users.Desktop.AllMySQLScript.sql');
Query OK, 1 row affected (0.39 sec)

使用 select 语句显示表中的所有记录。

查询如下

mysql> select *from getFileExtensionDemo;

以下是输出

+---------+--------------------------------------------+
| File_Id | File_Name                                  |
+---------+--------------------------------------------+
| 1       | John.AllMySQLConcept.doc                   |
| 2       | Introductiontojava.txt                     |
| 3       | C and C++.AllDataStructureandAlgorithm.pdf |
| 4       | C.Users.Desktop.AllMySQLScript.sql         |
+---------+--------------------------------------------+
4 rows in set (0.00 sec)

以下是查询,用于获取查询结果中的扩展名

mysql> select substring_index(File_Name,'.',-1) as AllFileExtension from getFileExtensionDemo;

以下是仅包含文件扩展名的输出

+------------------+
| AllFileExtension |
+------------------+
| doc              |
| txt              |
| pdf              |
| sql              |
+------------------+
4 rows in set (0.20 sec)

更新时间: 30-7-2019

逾 3K 阅读

开启您的职业

完成课程以获得认证

立即开始
广告
© . All rights reserved.