SQL에서는 값의 부분 문자열을 찾을 수 있습니다. 예를 들어 위치가 “도시, 주” 형식으로 저장되어 있는데 주만 가져오고 싶을 때가 있지요.
SUBSTR은 이런 형식으로 씁니다: SUBSTR(컬럼명, 시작위치, 문자수)
시작위치는 부분 문자열이 시작하는 지점을 나타내는 숫자입니다. 1은 첫 번째 문자, 2는 두 번째 문자를 뜻합니다. 음수도 가능하며, 그 경우 문자열 끝에서부터 셉니다. -1은 마지막 문자, -2는 뒤에서 두 번째 문자입니다.
문자수는 선택 사항입니다. 생략하면 부분 문자열은 “문자열의 나머지 전부”가 됩니다.
예를 들면 이렇습니다.
SUBSTR(name, 1, 5)는 이름의 첫 5글자입니다.
SUBSTR(name, -4)는 이름의 마지막 4글자입니다.
SELECT * FROM robots WHERE SUBSTR(name, -4) LIKE '20__';는 2000년에서 2099년 사이에 출시된 로봇을 모두 반환하는 또 다른 방법입니다.
참고: 다른 버전의 SQL에서는 RIGHT를 사용해 같은 일을 할 수 있습니다.
NY에 있는 로봇을 모두 반환할 수 있나요?