Maison >base de données >tutoriel mysql >Comment puis-je rechercher efficacement des données JSON dans MySQL ?

Comment puis-je rechercher efficacement des données JSON dans MySQL ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-09 21:05:111004parcourir

How Can I Efficiently Search JSON Data in MySQL?

Requêtes pour rechercher des données JSON dans MySQL

Vous essayez d'effectuer une recherche dans les données JSON stockées dans votre base de données MySQL. Même si vous utilisez une requête basée sur REGEXP, elle ne donne pas les résultats souhaités. Explorons une approche plus efficace.

Solution pour les versions MySQL >= 5.7

MySQL 5.7 et les versions ultérieures fournissent la fonction JSON_EXTRACT, qui vous permet de rechercher directement éléments spécifiques dans les données JSON. Pour trouver des clés égales à "1" avec des valeurs autres que "3", vous pouvez utiliser la requête suivante :

SELECT JSON_EXTRACT(attribs_json, '$.feature."1".value') AS attribs_json_value
FROM products
WHERE JSON_EXTRACT(attribs_json, '$.feature."1".value') != '["3"]'

Cela extraira la valeur de la clé "1" dans l'objet "feature" de le attribs_json.

Référence supplémentaire

Pour plus de précisions, reportez-vous au manuel de référence MySQL pour la recherche JSON fonctions : https://dev.mysql.com/doc/refman/5.7/en/json-search-functions.html

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