mysql中json_extract函数的使用?作用是什么?
Posted 枫飞飞
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql中json_extract函数的使用?作用是什么?相关的知识,希望对你有一定的参考价值。
http://www.cnblogs.com/chuanzhang053/p/9139624.html
需求描述:
今天看mysql中的json数据类型,涉及到一些使用,使用到了函数json_extract来
获取json字段中某个key的值,在此记录下.
操作过程:
| 2 | {"Tel": "13390989765", "name": "Mike", "address": "Guangzhou"} |
+----+----------------------------------------------------------------+
2 rows in set (0.00 sec)
备注:data字段就是json的数据类型,由键值对组成.
备注:这个查询时直接对json对象进行操作.
3.对tab_json表使用json_extract函数
mysql> select json_extract(data,\'$.name\') from tab_json;
+-----------------------------+
| json_extract(data,\'$.name\') |
+-----------------------------+
| "david" |
| "Mike" |
+-----------------------------+
2 rows in set (0.00 sec)
mysql> select json_extract(data,\'$.name\'),json_extract(data,\'$.tel\') from tab_json; #如果查询没有的key,那么是可以查询,不过返回的是NULL.
+-----------------------------+----------------------------+
| json_extract(data,\'$.name\') | json_extract(data,\'$.tel\') |
+-----------------------------+----------------------------+
| "david" | NULL |
| "Mike" | NULL |
+-----------------------------+----------------------------+
2 rows in set (0.00 sec)
mysql> select json_extract(data,\'$.name\'),json_extract(data,\'$.address\') from tab_json;
+-----------------------------+--------------------------------+
| json_extract(data,\'$.name\') | json_extract(data,\'$.address\') |
+-----------------------------+--------------------------------+
| "david" | "Beijing" |
| "Mike" | "Guangzhou" |
+-----------------------------+--------------------------------+
2 rows in set (0.00 sec)
备注:通过json_extract函数,获取到了json对象的特定key的值.
以上是关于mysql中json_extract函数的使用?作用是什么?的主要内容,如果未能解决你的问题,请参考以下文章
MySQL 5.7 JSON_EXTRACT 不适用于对象中的带引号的字符串:[错误]“字符串中缺少右引号”
将使用 JSON_EXTRACT 的查询从 MySQL 转换为 BigQuery
where子句中的mysql udf json_extract - 如何提高性能