텍스트를 선택하려면 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)