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

MySQL의 문자열에서 하위 문자열을 어떻게 추출할 수 있습니까?

<시간/>

MySQL SUBSTRING() 함수는 문자열에서 부분 문자열을 추출하는 데 사용할 수 있습니다. 기본적으로 SUBSTRING()은 특정 위치에서 시작하는 문자열에서 주어진 길이의 부분 문자열을 반환합니다. 다음과 같이 다양한 형태가 있습니다 -

  • SUBSTRING(str,pos)
  • SUBSTRING(위치에서 문자열)
  • SUBSTRING(str,pos,len)
  • SUBSTRING(str FROM pos FOR len)

len 인수가 없는 형식은 위치 pos에서 시작하는 문자열 str의 부분 문자열을 반환합니다. len 인수가 있는 형식은 위치 pos에서 시작하여 문자열 str에서 긴 부분 문자열 len 문자를 반환합니다. FROM을 사용하는 형식은 표준 MySQL 구문입니다. pos에 음수 값을 사용할 수도 있습니다. 이 경우 하위 문자열의 시작은 문자열의 시작이 아닌 끝에서 pos 문자입니다. 이 함수의 모든 형식에서 pos에 음수 값을 사용할 수 있습니다.

mysql> SELECT SUBSTRING('Quadratically',5);
+---------------------------------------------------------+
| SSUBSTRING('Quadratically',5)                           |
+---------------------------------------------------------+
| ratically                                               |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT SUBSTRING('foobarbar' FROM 4);
+---------------------------------------------------------+
| SUBSTRING('foobarbar' FROM 4)                           |
+---------------------------------------------------------+
| barbar                                                  |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT SUBSTRING('Quadratically',5,6);
+---------------------------------------------------------+
| SUBSTRING('Quadratically',5,6)                          |
+---------------------------------------------------------+
| ratica                                                  |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> Select SUBSTRING('foobarbar',-4);
+---------------------------+
| SUBSTRING('foobarbar',-4) |
+---------------------------+
| rbar                      |
+---------------------------+
1 row in set (0.05 sec)

SUBSTRING() 함수 외에 MID() 및 SUBSTR() 함수도 문자열에서 부분 문자열을 추출하는 데 사용됩니다. 둘 다 SUBSTRING() 함수의 동의어입니다.