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

대시로 연결된 MySQL 문자열을 어떻게 되돌릴 수 있습니까?

<시간/>

MySQL에는 문자열을 역전시킬 수 있는 REVERSE() 함수 이름이 있습니다. 그러나 대시로 연결된 문자열을 반대로 하려는 경우 REVERSE() 함수를 사용하면 다음 예와 같이 적절한 결과가 표시되지 않는다고 가정합니다.

mysql> Select REVERSE('AB-CD-EF');
+---------------------+
| REVERSE('AB-CD-EF') |
+---------------------+
| FE-DC-BA            |
+---------------------+
1 row in set (0.00 sec)

적절한 결과는 'EF-CD-AB'이며 이러한 출력을 얻기 위해 Instr() 함수와 함께 SUBSTRING_INDEX() 함수를 사용할 수 있습니다. 다음과 같이 시연됩니다.

mysql> Select CONCAT(SUBSTRING_INDEX('AB-CD-EF','-',-1), '-', substr('AB-CD-EF',instr('AB-CD-EF',"-")+1, instr('AB-CD-EF',"-")),LEFT('AB-CD-EF',LOCATE('-','AB-CD-EF') -1))As 'Reversed';
+-----------+
| Reversed  |
+-----------+
| EF-CD-AB  |
+-----------+
1 row in set (0.00 sec)