-- 示例代码:解析 JSON 数据
-- 假设我们有一个包含 JSON 数据的表 `users`,其中有一列 `info` 存储了用户的 JSON 信息。
CREATE TABLE users (
id INT PRIMARY KEY,
info JSON
);
-- 插入一些示例数据
INSERT INTO users (id, info) VALUES
(1, '{"name": "Alice", "age": 25, "address": {"city": "New York", "zip": "10001"}}'),
(2, '{"name": "Bob", "age": 30, "address": {"city": "Los Angeles", "zip": "90001"}}');
-- 解析 JSON 数据
-- 1. 获取用户的姓名
SELECT id, JSON_UNQUOTE(JSON_EXTRACT(info, '$.name')) AS name FROM users;
-- 2. 获取用户的年龄
SELECT id, JSON_UNQUOTE(JSON_EXTRACT(info, '$.age')) AS age FROM users;
-- 3. 获取用户的地址城市
SELECT id, JSON_UNQUOTE(JSON_EXTRACT(info, '$.address.city')) AS city FROM users;
-- 4. 更新用户的年龄
UPDATE users SET info = JSON_SET(info, '$.age', 26) WHERE id = 1;
-- 5. 添加一个新的键值对到 JSON 中
UPDATE users SET info = JSON_SET(info, '$.email', 'alice@example.com') WHERE id = 1;
-- 6. 删除 JSON 中的一个键
UPDATE users SET info = JSON_REMOVE(info, '$.address.zip') WHERE id = 1;
JSON_EXTRACT 用于从 JSON 字段中提取指定路径的数据,JSON_UNQUOTE 用于去除返回结果中的引号。以上代码展示了如何在 MySQL 中解析和操作 JSON 数据。
上一篇:windows启动mysql
下一篇:mysql when case
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站