- Kategorien:
Semistrukturierte Datenfunktionen (Array/Objekt)
ARRAY_POSITION¶
Gibt den ersten vorkommenden Index eines Elements in einem Array zurück.
Syntax¶
ARRAY_POSITION( <variant_expr> , <array> )
Argumente¶
variant_expr
Dieser Ausdruck sollte einen VARIANT-Wert ergeben. Die Funktion sucht nach dem ersten Auftreten dieses Werts im Array.
array
Das zu durchsuchende Array.
Rückgabewerte¶
Der Datentyp des zurückgegebenen Werts ist INTEGER.
Nutzungshinweise¶
Der Rückgabewert ist 0-basiert, nicht 1-basiert. Wenn also
variant_expr
mit dem ersten Element im Array übereinstimmt, gibt diese Funktion 0 zurück, nicht 1.Wenn der Wert VARIANT nicht im ARRAY enthalten ist, wird NULL zurückgegeben.
Wenn Sie NULL für
variant_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 | +----------------------------------------------------------------------+