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> )
Copy

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 de array, la fonction renvoie array 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);
Copy
+-------------------------------+
| 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);
Copy
+--------------------------------+
| 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);
Copy
+------------------+
| ARRAY_REMOVE_AT( |
|   [2, 5, 7],     |
|   10)            |
|------------------|
| [                |
|   2,             |
|   5,             |
|   7              |
| ]                |
+------------------+