Maison > base de données > tutoriel mysql > Comment puis-je interroger des tableaux JSON dans MySQL pour rechercher des éléments de tableau spécifiques ?

Comment puis-je interroger des tableaux JSON dans MySQL pour rechercher des éléments de tableau spécifiques ?

Susan Sarandon
Libérer: 2024-12-04 16:23:12
original
577 Les gens l'ont consulté

How Can I Query JSON Arrays in MySQL to Find Specific Array Elements?

Interrogation de tableaux JSON avec les fonctions JSON de MySQL

Dans MySQL, les données JSON peuvent être stockées dans des colonnes sous la forme d'un seul tableau. Pour interroger ces tableaux, vous pouvez utiliser les fonctions JSON fournies par MySQL.

Considérez une table avec une colonne JSON nommée data contenant un tableau d'entiers, tel que [1,2,3,4,5]. Pour sélectionner des lignes où l'un des éléments du tableau est supérieur à 2, vous ne pouvez pas utiliser directement la fonction JSON_EXTRACT comme démontré dans votre requête.

Au lieu de cela, vous pouvez utiliser la fonction JSON_CONTAINS comme suit :

  1. Entiers : JSON_CONTAINS(data, '7', '$') renvoie 0 si le tableau ne contient pas 7, et 1 si c'est le cas. Par exemple, JSON_CONTAINS('[1,2,3,4,5]', '7', '$') est évalué à 0.
  2. Strings : JSON_CONTAINS(data, ' "x"', '$') renvoie 1 si le tableau contient "x", et 0 sinon. De même, JSON_CONTAINS('["a","2","c","4","x"]', '"x"', '$') donne 1.

Dans votre scénario spécifique, vous pouvez utiliser la requête suivante :

SELECT * FROM my_table
WHERE JSON_CONTAINS(data, '2', '$');
Copier après la connexion

Cette requête renverra toutes les lignes où la colonne de données contient un tableau avec la valeur 2 ou supérieure.

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