Funktion ARRAY_POSITION: Änderung bei der Ermittlung der Position eines NULL-Werts

Achtung

Diese Verhaltensänderung ist in Bundle 2023_01 enthalten.

Den aktuellen Status des Bundles finden Sie unter Bundle-Verlauf.

Wenn Sie die Funktion ARRAY_POSITION aufrufen und einen Wert als erstes Argument übergeben, gibt die Funktion die Position des ersten ARRAY-Elements mit diesem Wert zurück.

Die Funktion ARRAY_POSITION hat sich geändert, wenn Sie NULL als erstes Argument angeben:

Bisher

Die Funktion gibt NULL zurück. Beispiel:

SELECT ARRAY_POSITION(NULL, [10, NULL, 30]);

+--------------------------------------+
| ARRAY_POSITION(NULL, [10, NULL, 30]) |
|--------------------------------------|
|                                 NULL |
+--------------------------------------+
Copy
Jetzt

Die Funktion gibt die Position des ersten NULL-Werts im ARRAY zurück. Beispiel:

SELECT ARRAY_POSITION(NULL, [10, NULL, 30]);
+--------------------------------------+
| ARRAY_POSITION(NULL, [10, NULL, 30]) |
|--------------------------------------|
|                                    1 |
+--------------------------------------+
Copy

Diese Änderung wurde aus Gründen der Konsistenz mit der Funktion ARRAY_CONTAINS implementiert. Wenn Sie die ARRAY_CONTAINS-Funktion verwenden, um zu bestimmen, ob ein ARRAY den Wert NULL enthält, gibt die Funktion TRUE zurück.

Ref.: 882