MySQL 5.7新增了对JSON数据类型的原生支持,从5.7.8版本开始,用户可以创建和操作JSON数据。创建JSON字段时,其数据类型被设置为json,不支持长度限制,允许NULL值,但不支持默认值。使用describe tool可以查看表结构,以确认JSON字段的存在和格式。使用JSON_OBJECT和JSON_ARRAY函数生成JSON格式的数据。插入...
MySQL 5.7 新特性 JSON 的创建,插入,查询,更新 一
MySQL 5.7新增了对JSON数据类型的原生支持,从5.7.8版本开始,用户可以创建和操作JSON数据。
创建JSON字段时,其数据类型被设置为json,不支持长度限制,允许NULL值,但不支持默认值。
使用describe tool可以查看表结构,以确认JSON字段的存在和格式。
使用JSON_OBJECT和JSON_ARRAY函数生成JSON格式的数据。
插入数据后,可以使用JSON中的路径形式进行查询,对象路径为$.path,数组路径为$[index]。
查询JSON时,可筛选特定路径的数据,如根据catagory中name = John筛选所有tag。
确认JSON类型后,可通过数组索引查询。使用JSON_UNQUOTE函数去除双引号,使用CAST函数将字符串转换为JSON形式进行比较。
在select和where条件中均可使用路径操作符进行JSON字段查询。
注意JSON元素的类型区分,如整型和字符串需明确。
JSON_CONTAINS函数可用于搜索JSON中的内容,但需注意其参数格式。
本篇文章仅介绍了JSON的创建、插入、查询,后续文章将深入探讨JSON字段的更新和删除操作。
在MySQL 5.7与MySQL 8.0之间,JSON字段的支持特性有所差异,特别是关键的更新操作和基于JSON字段的查询索引加速方法将在下一章中详细介绍。2024-10-03