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

MySQL에서 문자열에서 하위 문자열이 처음 나타나는 위치를 찾는 방법은 무엇입니까?

<시간/>

MySQL LOCATE() 함수를 사용하면 문자열에서 부분 문자열이 처음 나타나는 위치를 찾을 수 있습니다. 다음은 그것을 사용하는 구문입니다 -

구문

LOCATE(Substring, String)

이 함수에서 Substring은 발생 위치를 찾아야 하는 문자열이고, string은 하위 문자열이 검색되어야 하는 문자열입니다.

LOCATE() 함수의 인수로 두 문자열(즉, 검색할 하위 문자열과 하위 문자열을 검색할 문자열)을 모두 전달해야 합니다.

예시

mysql> Select LOCATE('Good','RAM IS A GOOD BOY')As Result;
+--------+
| Result |
+--------+
|     10 |
+--------+
1 row in set (0.00 sec)

위의 예에서 'RAM IS A GOOD BOY' 문자열의 10번째 위치에서 부분 문자열 'good'의 첫 번째 출현이 시작되기 때문에 출력은 10입니다.

그러나 위치를 나타내는 다른 인수를 사용하여 검색 시작점을 관리할 수도 있습니다. 위치 인수가 있는 LOCATE() 구문은 다음과 같습니다. -

LOCATE(Substring, String, position)

예시

mysql> Select LOCATE('Good','Good, RAM IS A GOOD BOY')As Result;
+--------+
| Result |
+--------+
|      1 |
+--------+
1 row in set (0.00 sec)

mysql> Select LOCATE('Good','Good, RAM IS A GOOD BOY',5)As Result;
+--------+
| Result |
+--------+
|     16 |
+--------+
1 row in set (0.00 sec)

위의 결과 집합에서 위치 인수 사용의 차이점을 볼 수 있습니다. 사용하지 않으면 기본적으로 검색이 첫 번째 위치에서 시작되고 이 예에서 위치 인수로 '5'를 지정하면 다섯 번째 위치에서 시작합니다.