카테고리:

반정형 및 정형 데이터 함수 (배열/오브젝트)

ARRAY_POSITION

배열에서 처음 나타나는 요소의 인덱스를 반환합니다.

구문

ARRAY_POSITION( <variant_expr> , <array> )
Copy

인자

value_expr

array 에서 찾을 값입니다.

array

검색할 ARRAY입니다.

반환

이 함수는 array 에서 value_expr 의 위치를 지정하는 INTEGER를 반환합니다.

사용법 노트

  • 반환 값은 1이 아니라 0부터 시작합니다. 즉, value_expr 이 배열의 첫 번째 요소와 일치하는 경우, 이 함수는 1이 아닌 0을 반환합니다.

  • 값이 ARRAY에 포함되어 있지 않은 경우, 함수는 NULL을 반환합니다.

  • value_expr 에 NULL을 지정하면 함수는 배열에서 첫 번째 NULL의 위치를 반환합니다.

아래 예는 이 함수를 사용하는 방법을 보여줍니다.

SELECT ARRAY_POSITION('hello'::variant, array_construct('hello', 'hi'));
+------------------------------------------------------------------+
| ARRAY_POSITION('HELLO'::VARIANT, ARRAY_CONSTRUCT('HELLO', 'HI')) |
|------------------------------------------------------------------|
|                                                                0 |
+------------------------------------------------------------------+
Copy
SELECT ARRAY_POSITION('hi'::variant, array_construct('hello', 'hi'));
+---------------------------------------------------------------+
| ARRAY_POSITION('HI'::VARIANT, ARRAY_CONSTRUCT('HELLO', 'HI')) |
|---------------------------------------------------------------|
|                                                             1 |
+---------------------------------------------------------------+
Copy
SELECT ARRAY_POSITION('hello'::variant, array_construct('hola', 'bonjour'));
+----------------------------------------------------------------------+
| ARRAY_POSITION('HELLO'::VARIANT, ARRAY_CONSTRUCT('HOLA', 'BONJOUR')) |
|----------------------------------------------------------------------|
|                                                                 NULL |
+----------------------------------------------------------------------+
Copy