2013-01-15 1 views
12

문자열에서 세 번째 공백의 인덱스를 찾는 가장 간단한 방법은 무엇입니까?MySQL의 두 번째 (또는 세 번째) 인덱스 문자열

내 목표는이 공간으로 분리 된 목록 CCC을 얻는 것입니다 : AAAA BBBB CCCC DDDD EEE. 여기서 A와 B와 D는 고정 길이이고, C는 가변 길이이며 E F G는 선택 사항입니다.

자바에서는 indexof를 사용하고 시작점을 10으로 설정하면 세 번째 공간이 생길 것입니다.하지만 MySQL에서 그렇게 할 수없는 것 같습니다. 그래서 '세 번째 인덱스'를 찾을 수있을 것입니다. 기능?

답변

33

사용할 수 있습니다 단지 CCCC으로 내려갑니다.

+0

숫자로 색인의 색인을 얻는 방법에 대한 훌륭한 설명. 그래서 8 개 항목으로 된 CSV가 있다면 그 숫자 중 8 개를 얻을 수 있습니다 .... 매우 감사합니다. –

3

당신은 당신은 외부 함수 호출이 있음을 깎다 것 동안 AAAA BBBB CCCC에 당신을 얻을 것이다이

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(field, ' ', 3), ' ', -1) 
FROM table 

내부 함수 호출처럼 SUBSTRING_INDEX 기능을 사용하고자하는 것입니다 SUBSTRING_INDEX

Documentation