- Catégories :
Fonctions de données semi-structurées et structurées (tableau/objet)
ARRAY_REMOVE¶
Avec un ARRAY source donné, renvoie un ARRAY dont les éléments de la valeur spécifiée ont été supprimés.
Par exemple, ARRAY_REMOVE([2, 5, 7, 5, 1], 5)
renvoie un ARRAY dont les éléments égaux à 5 ont été supprimés ([2, 7, 1]
).
Syntaxe¶
ARRAY_REMOVE( <array> , <value_of_elements_to_remove> )
Arguments¶
array
Le tableau source.
value_of_elements_to_remove
La valeur VARIANT des éléments à supprimer. La fonction supprime les éléments égaux à cette valeur.
Si vous spécifiez une valeur VARCHAR, vous devez d’abord la convertir en VARIANT.
Renvoie¶
Un ARRAY dont tous les éléments égaux à la valeur spécifiée ont été supprimés.
Si value_of_elements_to_remove
est NULL, la fonction renvoie NULL.
Notes sur l’utilisation¶
Si tous les éléments de
array
sont égaux àvalue_of_elements_to_remove
, la fonction renvoie un ARRAY vide.
Exemples¶
L’exemple suivant renvoie un ARRAY dont les éléments ayant la valeur 5 ont été supprimés.
SELECT ARRAY_REMOVE(
[1, 5, 5.00, 5.00::DOUBLE, '5', 5, NULL],
5);
+---------------------------------------------+
| ARRAY_REMOVE( |
| [1, 5, 5.00, 5.00::DOUBLE, '5', 5, NULL], |
| 5) |
|---------------------------------------------|
| [ |
| 1, |
| "5", |
| undefined |
| ] |
+---------------------------------------------+
L’exemple suivant supprime les éléments ayant la valeur 5 d’un ARRAY qui ne contient que des éléments ayant la valeur 5. La fonction renvoie un ARRAY vide :
SELECT ARRAY_REMOVE([5, 5], 5);
+-------------------------+
| ARRAY_REMOVE([5, 5], 5) |
|-------------------------|
| [] |
+-------------------------+
L’exemple suivant supprime les éléments ayant la valeur 'a'
d’un ARRAY. Comme le montre l’exemple, vous devez convertir la valeur en VARIANT.
SELECT ARRAY_REMOVE(
['a', 'b', 'a', 'c', 'd', 'a'],
'a'::VARIANT);
+-----------------------------------+
| ARRAY_REMOVE( |
| ['A', 'B', 'A', 'C', 'D', 'A'], |
| 'A'::VARIANT) |
|-----------------------------------|
| [ |
| "b", |
| "c", |
| "d" |
| ] |
+-----------------------------------+