Aller au contenu principal
Page traduite

Cette page a été traduite de l'anglais avec l'aide de l'IA. En cas de divergence, la version anglaise fait référence.

JSON_REMOVE

Supprime les éléments indiqués d'un document JSON à l'aide d'expressions de chemin. Si un chemin indiqué n'existe pas dans le document, il est ignoré. Le traitement séquentiel des chemins peut modifier la structure pour les suppressions suivantes.

Voir aussi :
[SELECT] [JSON_EXTRACT]


Syntaxe​

SELECT JSON_REMOVE(json_document, path1, path2, ...) FROM <multipartIdentifier>;

Arguments​

json_document
Le document JSON dont des éléments doivent être supprimés.

path1, path2, ...
Une ou plusieurs expressions de chemin désignant les éléments du document JSON à supprimer.

Valeur(s) renvoyée(s)​

Renvoie une copie du document JSON sans les éléments indiqués. Si aucun chemin n'est fourni, renvoie le JSON d'entrée reformaté, sans les espaces blancs superflus.


Exemples​

Supprimer un élément d'un tableau JSON​

-- Example: Remove the third element from a JSON array
SELECT JSON_REMOVE('[0,1,2,3,4]', '$[2]') AS modified_json;

Sortie : '[0,1,3,4]'

Supprimer plusieurs éléments d'un tableau JSON​

-- Example: Remove the first and third elements from a JSON array
SELECT JSON_REMOVE('[0,1,2,3,4]', '$[2]', '$[0]') AS modified_json;

Sortie : '[1,3,4]'

Supprimer le dernier élément à l'aide d'un index négatif​

-- Example: Remove the last and first elements from a JSON array
SELECT JSON_REMOVE('[0,1,2,3,4]', '$[#-1]', '$[0]') AS modified_json;

Sortie : '[1,2,3]'

Supprimer un chemin inexistant​

-- Example: Attempt to remove a non-existent key from a JSON object
SELECT JSON_REMOVE('{"x":25,"y":42}', '$.z') AS modified_json;

Sortie : '{"x":25,"y":42}'

Supprimer une clé existante d'un objet JSON​

-- Example: Remove the 'y' key from a JSON object
SELECT JSON_REMOVE('{"x":25,"y":42}', '$.y') AS modified_json;

Sortie : '{"x":25}'

Cas limite : suppression avec le chemin racine​

-- Example: Attempt to remove using the root path
SELECT JSON_REMOVE('{"x":25,"y":42}', '$') AS modified_json;

Sortie : NULL

Ces exemples montrent comment json_remove() permet de manipuler dynamiquement des données JSON, dans des scénarios variés allant de simples suppressions à la gestion de cas limites dans la modification de structures de données.