Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL에서 마지막 슬래시 뒤의 텍스트를 선택하시겠습니까?

<시간/>

텍스트를 선택하려면 MySQL의 substring_index() 함수를 사용해야 합니다.

구문은 다음과 같습니다.

SELECT substring_index(yourColumnName,'/',-1) AS anyAliasName FROM yourTableName;

위의 개념을 이해하기 위해 테이블을 만들어 보겠습니다. 테이블 생성 쿼리는 다음과 같습니다.

mysql> create table selectTextAfterLastSlashDemo
   - > (
   - > UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   - > UserPathDirectory varchar(200)
   - > );
Query OK, 0 rows affected (0.54 sec)

삽입 명령을 사용하여 테이블에 일부 레코드를 삽입하십시오.

쿼리는 다음과 같습니다

mysql> insert into selectTextAfterLastSlashDemo(UserPathDirectory)
values('C:/MyFolder1/MyEntityFramework');
Query OK, 1 row affected (0.18 sec)
mysql> insert into selectTextAfterLastSlashDemo(UserPathDirectory)
values('D:/MySpringFrameworkDemo');
Query OK, 1 row affected (0.14 sec)
mysql> insert into selectTextAfterLastSlashDemo(UserPathDirectory)
values('E:/Java/MyRootFolder/Source/AllHibernateDemo');
Query OK, 1 row affected (0.14 sec)
mysql> insert into selectTextAfterLastSlashDemo(UserPathDirectory) values('C:/Program
Files/MySQL/Server 8.0');
Query OK, 1 row affected (0.20 sec)
mysql> insert into selectTextAfterLastSlashDemo(UserPathDirectory)
values('C:/John/Folder1/Folder2');
Query OK, 1 row affected (0.10 sec)

select 문을 사용하여 테이블의 모든 레코드를 표시합니다.

쿼리는 다음과 같습니다

mysql> select *from selectTextAfterLastSlashDemo;

다음은 열의 경로를 표시하는 출력입니다.

+--------+----------------------------------------------+
| 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                       |
+--------+----------------------------------------------+
5 rows in set (0.00 sec)

다음은 마지막 슬래시 이후에 텍스트를 가져오는 쿼리입니다.

mysql> select substring_index(UserPathDirectory,'/',-1) as TextAfterLastSlash from
selectTextAfterLastSlashDemo;
로 선택

다음은 마지막 슬래시 이후의 텍스트를 표시하는 출력입니다.

+-----------------------+
| TextAfterLastSlash    |
+-----------------------+
| MyEntityFramework     |
| MySpringFrameworkDemo |
| AllHibernateDemo      |
| Server 8.0            |
| Folder2               |
+-----------------------+
5 rows in set (0.00 sec)