- Kategorien:
Funktionen für semistrukturierte und strukturierte Daten (Array/Objekt)
ARRAY_POSITION¶
Gibt den ersten vorkommenden Index eines Elements in einem Array zurück.
Syntax¶
ARRAY_POSITION( <variant_expr> , <array> )
Argumente¶
value_expr
In
array
zu suchender Wert.Wenn
array
ein semistrukturiertes ARRAY ist, mussvalue_expr
einen VARIANT ergeben.Wenn
array
ein strukturiertes ARRAY ist, mussvalue_expr
einen Typ ergeben, der mit dem ARRAY-Typ verglichen werden kann.
array
Das zu durchsuchende ARRAY.
Rückgabewerte¶
Die Funktion gibt einen INTEGER-Wert zurück, der die Position von value_expr
in array
angibt.
Nutzungshinweise¶
Der Rückgabewert ist 0-basiert, nicht 1-basiert. Wenn also
value_expr
mit dem ersten Element im Array übereinstimmt, gibt diese Funktion 0 zurück, nicht 1.Wenn der Wert nicht im ARRAY enthalten ist, wird NULL zurückgegeben.
Wenn Sie NULL für
value_expr
angeben, gibt die Funktion die Position des ersten NULL im Array zurück.
Beispiele¶
Die folgenden Beispiele zeigen die Verwendung dieser Funktion:
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 | +----------------------------------------------------------------------+