Maison >base de données >tutoriel mysql >Comment utiliser JSON dans MySQL

Comment utiliser JSON dans MySQL

PHPz
PHPzavant
2023-05-30 09:46:052499parcourir

Le type de données du champ mysql prend en charge le format json et peut stocker directement des tableaux json et des objets json.

1. Il existe deux façons d'insérer des données json

1. Insérez sous la forme de chaînes ordinaires et devez suivre le format json

2 Utilisez les fonctions intégrées (JSON_OBJECT et JSON_ARRAY) pour créer des données JSON, puis insérez-le

2. Interrogez JSON Les données du champ dans la colonne

1 -> 'chemin' et le formulaire JSON_EXTRACT(colonne, 'chemin') pour accéder aux données spécifiques du champ spécifié. (*Notez que le chemin doit être placé entre guillemets simples)

où colonne représente le nom de colonne du champ de données à interroger ;
chemin est le chemin d'accès aux données JSON et le format du chemin est $.path ou $[ idx].

$.path est utilisé pour les données de type objet JSON ;
$[idx] est utilisé pour les données de type tableau JSON ;
$ représente le nœud racine de l'ensemble des données JSON ;
path est la clé du champ d'accès. contient des espaces, vous devez utiliser des guillemets doubles, tels que $."nick name"; (* Notez que les noms de champs chinois doivent également être mis entre guillemets doubles)
[idx] est l'index du tableau.

2, -> 和JSON_EXTRACT查询到的字段字符串类型还会有个双引号,还需要做一层处理,可以使用 ->>和JSON_UNQUOTE sont supprimés et les caractères d'échappement sont également supprimés.

JSON_UNQUOTE(JSON_EXTRACT(column, path)) est équivalent à column->>path

3. Il existe deux méthodes de requête à plusieurs niveaux :

① column -> point Méthode de connexion numérique pour accéder aux champs du sous-ensemble

② JSON_EXTRACT(JSON_EXTRACT(column, path), path) Méthode d'imbrication JSON_EXTRACT

③column->'$[*].key' Vous pouvez interroger toutes les clés du tableau json et renvoyer le tableau

3. Recherche conditionnelle des champs JSON

1. Requête exacte pour les champs de type Json

où colonne-> '$.key' = valeur

2. >'$ [*].key' comme '%value%'

3. Requête exacte pour les champs de type JsonArray

où JSON_CONTAINS(column,JSON_OBJECT('key', "value"))

4. relations de niveau, requête floue pour tous

où colonne->'$**.key' comme '%value%'

IV. Opération de mise à jour du champ JSON 1. Mettre à jour le champ

JSON_SET(column, path, val[, path, val] ..) Mettre à jour ou insérer

JSON_REPLACE(column, path, val[, path, val] ...) Mettre à jour uniquement


2. Nouveaux champs

JSON_INSERT(column, path, val[, path, val] .. .) L'insertion de nouveaux champs ne modifiera pas les champs existants

3 Supprimer les champs

JSON_REMOVE(column, path[, path] ...) Supprimer les champs

.

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer