Maison > base de données > tutoriel mysql > Comment rechercher efficacement une valeur spécifique dans un tableau JSON dans MySQL 8.0.15 ?

Comment rechercher efficacement une valeur spécifique dans un tableau JSON dans MySQL 8.0.15 ?

Barbara Streisand
Libérer: 2024-10-29 00:46:30
original
271 Les gens l'ont consulté

How to Efficiently Search for a Specific Value within a JSON Array in MySQL 8.0.15?

Valeur JSON de recherche MySQL par clé dans le tableau

Dans MySQL 8.0.15, trouver une valeur spécifique dans un tableau d'objets JSON peut être stimulant. Cependant, la fonction JSON_TABLE() apporte une solution en convertissant le document JSON en une table dérivée virtuelle.

Considérez le tableau suivant :

<code class="json">[
    {"Race": "Orc", "strength": 14},
    {"Race": "Knight", "strength": 7},
]</code>
Copier après la connexion

Pour récupérer la force du Chevalier, nous peut utiliser :

<code class="sql">SELECT j.strength
FROM mytable,
JSON_TABLE(mycol, '$[*]' 
  COLUMNS (
    race VARCHAR(10) PATH '$.Race', 
    strength INT PATH '$.strength'
  )
) AS j 
WHERE j.race = 'Knight'</code>
Copier après la connexion

Cela convertit le tableau JSON en un tableau avec les colonnes "race" et "force", nous permettant d'appliquer une clause WHERE pour trouver la valeur souhaitée.

Cependant , l'inconvénient de l'utilisation de JSON_TABLE() est la nécessité de spécifier les attributs souhaités dans la requête, ce qui peut ne pas être possible si les attributs sont inconnus. Cela souligne l'importance de définir des attributs lorsque vous travaillez avec des données JSON pour simplifier les requêtes et éviter les jointures complexes.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal