Function array_position

Source
pub(super) fn array_position(
    array: ListRef<'_>,
    element: Option<ScalarRefImpl<'_>>,
) -> Result<Option<i32>>
Expand description

Returns the subscript of the first occurrence of the second argument in the array, or NULL if it’s not present.

Examples:

query I
select array_position(array[1, null, 2, null], null);
----
2

query I
select array_position(array[3, 4, 5], 2);
----
NULL

query I
select array_position(null, 4);
----
NULL

query I
select array_position(null, null);
----
NULL

query I
select array_position('{yes}', true);
----
1

# Like in PostgreSQL, searching `int` in multidimensional array is disallowed.
statement error
select array_position(array[array[1, 2], array[3, 4]], 1);

# Unlike in PostgreSQL, it is okay to search `int[]` inside `int[][]`.
query I
select array_position(array[array[1, 2], array[3, 4]], array[3, 4]);
----
2

statement error
select array_position(array[3, 4], true);

query I
select array_position(array[3, 4], 4.0);
----
2