Maison >base de données >tutoriel mysql >Comment interroger les données JSON stockées dans les colonnes MySQL ?

Comment interroger les données JSON stockées dans les colonnes MySQL ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-27 16:00:03260parcourir

 How to Query JSON Data Stored in MySQL Columns?

Interrogation de données JSON dans les colonnes MySQL

Dans MySQL, vous pouvez stocker des objets JSON dans des colonnes pour stocker des structures de données complexes. Pour interroger efficacement ces champs JSON, vous pourriez rencontrer des difficultés à les intégrer dans les clauses WHERE. Voici une solution :

Solution utilisant json_extract

MySQL 5.7 et versions ultérieures prennent en charge la fonction json_extract, qui vous permet d'extraire des valeurs spécifiques des données JSON. Cette fonction accepte deux arguments : les données JSON et une expression de chemin JSON.

Exemple :

Disons que vous avez une table "articles" avec une colonne "json_data" qui stocke les objets JSON. Pour rechercher des articles dont les titres contiennent « CPU » :

<code class="sql">SELECT user_id, json_data
FROM articles
WHERE json_extract(json_data, '$.title') LIKE '%CPU%';</code>

Cette requête renverra :

+---------+--------------------------------------------------------------------------------------------------+
| user_id | json_data                                                                                        |
+---------+--------------------------------------------------------------------------------------------------+
|       1 | {"url":"https://www.cpubenchmark.net/","title": "CPU Benchmarks"}                                |
+---------+--------------------------------------------------------------------------------------------------+

Explication :

  • La fonction json_extract extrait le champ "titre" des données JSON dans la colonne "json_data".
  • L'opérateur LIKE est utilisé pour comparer la valeur extraite avec "%CPU%".

En incorporant json_extract dans vos requêtes, vous pouvez facilement rechercher et filtrer les données JSON dans MySQL, ce qui en fait un outil puissant pour travailler avec des données 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!

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