- 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¶
array
Le tableau source.
position
La 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,
-1
supprime 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
position
dépasse la longueur dearray
, la fonction renvoiearray
sans 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 |
| ] |
+------------------+