mysql5.7支持的json字段查询
使用示例:
存储结构如下:
1.以json字段作为查询条件:[json字段全部是JSONObject类型的]
SELECT
*
FROMworksheet_data_table_data wWHEREw.val-> '$.input_0' LIKE '%0%'
查询结果:
2.判断JSON字段,是JSONObject类型还是JSONArray类型
SELECTw.val,
JSON_TYPE( w.val )FROMworksheet_data_table_data w
查询结果:
3.查询JSON字段是 Array的JSON类型的
SELECTw.val,
JSON_TYPE( w.val )FROMworksheet_data_table_data wwhereJSON_TYPE(w.val)= 'ARRAY'
查询结果:
4.以json字段为查询条件[查询JSONArray]类型 [like查询]
SELECT
*
FROMworksheet_data_table_data wWHEREw.val-> '$[*].*' LIKE '%峰%'
解释:
w.val -> '$[*].*' LIKE '%峰%'
1.w.val字段是JSON数组[无所谓JSONObject还是JSONArray]
[反正如果按照对象查,那数组是匹配不到的]
[反之,如果按照数组查,对象也是匹配不到的]
2.'$[*].*'代表查询JSONArray 数组格式的JSON字符串中,
第一个*代