POSITION 함수는 한 스트링 내에서 다른 스트링의 위치를 반환하는 함수이다. 두 개의 비트열과 두 개의 문자열을 입력으로 주어질 수는 있지만, 문자열 내에서 비트열 위치를 구하는 것은 에러로 처리된다.
POSITION 함수는 1부터 시작하는 정수 인덱스 값을 반환한다. 이것은 탐색이 스트링의 첫 번째 위치에서부터 시작된다는 것을 의미한다. 입력이 문자열이면 위치는 문자 단위로 측정되며, 비트열이면 비트 단위로 측정된다.
POSITION
( position_operand IN position_operand
)
position_operand
:
bit string
character string
NULL
스트링 내에서 한 스트링의 위치가 이 함수에 의해서 결정되며, position_operand가 발견되지 않으면 0이 반환된다.
POSITION 함수는 가끔 다른 함수와 연결되어서 사용된다. 예를 들어, 특정 스트링에서 일부 스트링을 추출하고 싶은 경우에 POSITION 함수의 결과를 SUBSTRING 함수의 입력으로 사용할 수 있다. 이와 같은 예는 SUBSTRING 함수 설명 부분에 나와있다.
다음은 문자열 'United States of America'에서 'of'의 위치를 반환하는 예제이다.
SELECT POSITION ('of' IN 'United States of
America')
FROM db_root;
결과값: 15