- Catégories :
Fonctions de données semi-structurées et structurées (tableau/objet)
ARRAY_REMOVE_AT¶
Avec un ARRAY source donné, renvoie un ARRAY dont les éléments à la position spécifiée ont été supprimés.
Par exemple, ARRAY_REMOVE_AT([2, 5, 7], 0) renvoie un ARRAY dont l’élément en position 0 a été supprimé ([5, 7]).
Syntaxe¶
ARRAY_REMOVE_AT( <array> , <position> )
Arguments¶
arrayLe tableau source.
positionLa position (basée sur zéro) de l’élément à supprimer. La fonction supprime l’élément à cette position.
Une position négative est interprétée comme un index à l’arrière du tableau (par exemple,
-1supprime le dernier élément du tableau).
Renvoie¶
Un ARRAY dont l’élément situé à la position spécifiée a été supprimé.
Si position est NULL, la fonction renvoie NULL.
Notes sur l’utilisation¶
Si la valeur absolue de
positiondépasse la longueur dearray, la fonction renvoiearraysans aucun élément supprimé.
Exemples¶
L’exemple suivant renvoie un ARRAY avec des éléments dont le premier élément a été supprimé.
SELECT ARRAY_REMOVE_AT(
[2, 5, 7],
0);
+-------------------------------+
| ARRAY_REMOVE_AT([2, 5, 7], 0) |
|-------------------------------|
| [ |
| 5, |
| 7 |
| ] |
+-------------------------------+
L’exemple suivant renvoie un ARRAY avec des éléments dont le dernier élément a été supprimé.
SELECT ARRAY_REMOVE_AT(
[2, 5, 7],
-1);
+--------------------------------+
| ARRAY_REMOVE_AT([2, 5, 7], -1) |
|--------------------------------|
| [ |
| 2, |
| 5 |
| ] |
+--------------------------------+
Dans l’exemple suivant, position est plus grand que la longueur de ARRAY, la fonction renvoie donc ARRAY sans apporter de modification.
SELECT ARRAY_REMOVE_AT(
[2, 5, 7],
10);
+------------------+
| ARRAY_REMOVE_AT( |
| [2, 5, 7], |
| 10) |
|------------------|
| [ |
| 2, |
| 5, |
| 7 |
| ] |
+------------------+