MySQL常用json方法使用记录
介绍
Mysql5.7版本以后提供了一个原生的Json类型,Json值将不再以字符串的形式存储,而是采用一种允许快速读取文本元素(document elements)的内部二进制(internal binary)格式。在Json列插入或者更新的时候将会自动验证Json文本,未通过验证的文本将产生一个错误信息。Json文本采用标准的创建方式,可以使用大多数的比较操作符进行比较操作,例如:=, <, <=, >, >=, <>, != 和 <=>。
常用使用方法
创建有json字段的表
-- 创建表
CREATE TABLE table_json(id INT PRIMARY KEY, sname VARCHAR(20) , info JSON);
查询记录
-- 查询记录
SELECT sname,JSON_EXTRACT(info,'$.age') FROM table_json;
SELECT sname,info->'$.age' FROM table_json;
-- 查询key
SELECT id,json_keys(info) FROM table_json;
修改记录
-- 增加键
UPDATE table_json SET info = json_set(info,'$.ip','192.168.1.1') WHERE id = 2;
-- 变更值
UPDATE table_json SET info = json_set(info,'$.ip','192.168.1.2') WHERE id = 2;
-- 删除键
UPDATE table_json SET info = json_remove(info,'$.ip') WHERE id = 2;
插入
UPDATE table_json SET info = JSON_INSERT(info,'$.user-agent','chrome')
参考
https://dev.mysql.com/doc/refman/5.7/en/json-creation-functions.html
https://www.cnblogs.com/ooo0/p/9309277.html
最后更新于 2019-08-14 17:26:39 并被添加「mysql json」标签,已有 585 位童鞋阅读过。
本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处
实用的技巧
后台手动更新指用命令更新吗?
@创业博客
嗯,如果担心的话,建议备份数据,然后重新装新版本,然后导入数据
网站很清爽,typecho就是不一样,最近用宝塔mysql总是更新不了,不知道是这么回事
@创业思维
我的mysql用的老版本的,没有打算更新,建议后台手工更新吧