Maison >base de données >tutoriel mysql >mysql comment mettre à jour le champ json

mysql comment mettre à jour le champ json

William Shakespeare
William Shakespeareoriginal
2024-12-25 11:37:14846parcourir

Comment utiliser MySQL pour mettre à jour un champ JSON ?

Pour mettre à jour un champ JSON dans MySQL, utilisez la fonction JSON_SET(). Cette fonction prend deux arguments : un chemin JSON (précisant l'emplacement du champ à mettre à jour) et la nouvelle valeur.

Par exemple, pour mettre à jour le champ nom de l'objet utilisateur dans le document JSON suivant :

<code>{
  "user": {
    "name": "John Doe",
    "age": 30
  }
}</code>

Vous utiliseriez la requête suivante :

<code>UPDATE table_name SET json_field = JSON_SET(json_field, '$.user.name', 'Jane Doe')
WHERE ...;</code>

Comment mettre à jour efficacement plusieurs valeurs dans un champ JSON dans MySQL ?

Pour mettre à jour efficacement plusieurs valeurs dans un champ JSON dans MySQL, utilisez la fonction JSON_REPLACE(). Cette fonction prend deux arguments : un chemin JSON (spécifiant l'emplacement du champ à mettre à jour) et la nouvelle valeur. La nouvelle valeur peut être un objet JSON, un tableau ou un scalaire.

Par exemple, pour mettre à jour les champs nom et âge de l'objet utilisateur dans l'exemple précédent, vous utiliserez la requête suivante :

<code>UPDATE table_name SET json_field = JSON_REPLACE(json_field, '$.user', JSON_OBJECT('name', 'Jane Doe', 'age', 31))
WHERE ...;</code>

Quelle est la syntaxe de mise à jour d'un champ JSON imbriqué dans MySQL ?

Pour mettre à jour un champ JSON imbriqué dans MySQL, utilisez la fonction JSON_SET() avec un chemin JSON imbriqué. Un chemin JSON imbriqué est un chemin JSON qui contient un point (.) pour séparer les noms de champs imbriqués.

Par exemple, pour mettre à jour le champ rue de l'objet adresse dans l'objet utilisateur dans l'exemple précédent, vous devez utilisez la requête suivante :

<code>UPDATE table_name SET json_field = JSON_SET(json_field, '$.user.address.street', '123 Main Street')
WHERE ...;</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:mysql comment stocker jsonArticle suivant:mysql comment stocker json