La fonction `JSON_EXTRACT()` de MySQL est utilisée pour extraire des données de documents JSON. Il vous permet de récupérer des valeurs spécifiques à partir de données encodées en JSON et stockées dans votre base de données.
Utilisation
`JSON_EXTRACT()` est couramment utilisé lorsque vous avez besoin d'accéder ou de manipuler des données spécifiques dans un objet ou un tableau JSON. Il spécifie un chemin d'accès aux données souhaitées, qui peuvent être une valeur unique ou un ensemble de valeurs.
Dans cette syntaxe, `json_doc` représente les données JSON, et `path` spécifie l'emplacement de la valeur souhaitée dans le document JSON. Les chemins peuvent utiliser la notation par points pour les éléments imbriqués et la notation par crochets pour les tableaux. Le symbole `$` indique la racine du document JSON.
Note : La fonction `JSON_EXTRACT()` est disponible à partir de MySQL 5.7.
Exemples
1. Extraction de base
SELECTJSON_EXTRACT('{"name": "John", "age": 30}','$.name');Propulsé par
Cet exemple extrait la valeur "John" de la chaîne JSON, en accédant à la clé `name`.
2. Extraction JSON imbriquée
SELECTJSON_EXTRACT('{"user": {"name": "Jane", "age": 25}}','$.user.age');Propulsé par
Ici, la fonction récupère la valeur de l'âge `25` à partir d'un objet JSON imbriqué sous la clé `user`.
3. Extraction à partir d'un tableau JSON
SELECTJSON_EXTRACT('[10, 20, 30, {"key": "value"}]','$[3].key');Propulsé par
La fonction extrait la valeur `"value"` d'un élément de tableau JSON à l'index 3, qui est un objet JSON avec une `clé`.
Conseils et bonnes pratiques
Utilisez du JSON valide. Assurez-vous que le document JSON est correctement formaté et valide pour éviter les erreurs.
Indices de levier. Envisagez d'indexer les colonnes JSON pour améliorer les performances des requêtes.
Prise en compte de la syntaxe du chemin. Familiarisez-vous avec la syntaxe des chemins JSON, en utilisant `$` comme racine et la notation par points pour les éléments imbriqués. Il est également possible d'accéder aux tableaux en utilisant la notation par crochets.
Gérer les nullités. La fonction renvoie `NULL` si le chemin spécifié n'existe pas dans le document JSON.
Optimisez le stockage. Utilisez des colonnes JSON au lieu de grands champs de texte pour une meilleure efficacité et une optimisation des requêtes.
Combinez les fonctions. Pensez à combiner `JSON_EXTRACT()` avec d'autres fonctions SQL pour manipuler et récupérer des structures de données complexes.
La fonction `JSON_EXTRACT()` de MySQL est utilisée pour extraire des données de documents JSON. Il vous permet de récupérer des valeurs spécifiques à partir de données encodées en JSON et stockées dans votre base de données.
Utilisation
`JSON_EXTRACT()` est couramment utilisé lorsque vous avez besoin d'accéder ou de manipuler des données spécifiques dans un objet ou un tableau JSON. Il spécifie un chemin d'accès aux données souhaitées, qui peuvent être une valeur unique ou un ensemble de valeurs.
Dans cette syntaxe, `json_doc` représente les données JSON, et `path` spécifie l'emplacement de la valeur souhaitée dans le document JSON. Les chemins peuvent utiliser la notation par points pour les éléments imbriqués et la notation par crochets pour les tableaux. Le symbole `$` indique la racine du document JSON.
Exemples
1. Extraction de base
Cet exemple extrait la valeur "John" de la chaîne JSON, en accédant à la clé `name`.
2. Extraction JSON imbriquée
Ici, la fonction récupère la valeur de l'âge `25` à partir d'un objet JSON imbriqué sous la clé `user`.
3. Extraction à partir d'un tableau JSON
La fonction extrait la valeur `"value"` d'un élément de tableau JSON à l'index 3, qui est un objet JSON avec une `clé`.
Conseils et bonnes pratiques