- Categories:
- Semi-structured and structured data functions (Array/Object) 
ARRAY_POSITION¶
Returns the index of the first occurrence of an element in an array.
Syntax¶
ARRAY_POSITION( <variant_expr> , <array> )
Arguments¶
- value_expr
- Value to find in - array.- If - arrayis a semi-structured ARRAY,- value_exprmust evaluate to a VARIANT.
- If - arrayis a structured ARRAY,- value_exprmust evaluate to a type that is comparable to the type of the ARRAY.
 
- array
- The ARRAY to search. 
Returns¶
The function returns an INTEGER specifying the position of value_expr in array.
Usage notes¶
- The return value is 0-based, not 1-based. In other words, if the - value_exprmatches the first element in the array, this function returns 0, not 1.
- If the value is not contained in the ARRAY, the function returns NULL. 
- If you specify NULL for - value_expr, the function returns the position of the first NULL in the array.
Examples¶
The examples below show how to use this function:
SELECT ARRAY_POSITION('hello'::variant, array_construct('hello', 'hi')); +------------------------------------------------------------------+ | ARRAY_POSITION('HELLO'::VARIANT, ARRAY_CONSTRUCT('HELLO', 'HI')) | |------------------------------------------------------------------| | 0 | +------------------------------------------------------------------+SELECT ARRAY_POSITION('hi'::variant, array_construct('hello', 'hi')); +---------------------------------------------------------------+ | ARRAY_POSITION('HI'::VARIANT, ARRAY_CONSTRUCT('HELLO', 'HI')) | |---------------------------------------------------------------| | 1 | +---------------------------------------------------------------+SELECT ARRAY_POSITION('hello'::variant, array_construct('hola', 'bonjour')); +----------------------------------------------------------------------+ | ARRAY_POSITION('HELLO'::VARIANT, ARRAY_CONSTRUCT('HOLA', 'BONJOUR')) | |----------------------------------------------------------------------| | NULL | +----------------------------------------------------------------------+