📅  最后修改于: 2023-12-03 14:44:27.130000             🧑  作者: Mango
MySQL 5.7.8 及以上版本支持 JSON 数据类型,这使得操作 JSON 数据变得非常方便。本文将向程序员介绍如何在 MySQL 中使用 JSON 获取值。
JSON 是一种轻量级的数据交换格式,常用于 Web 应用程序之间的数据传输。MySQL 5.7.8 及以上版本引入了 JSON 数据类型,使得 MySQL 可以直接存储、操作和查询 JSON 数据。
在 MySQL 中,JSON 数据可以表示为字符串,使用 JSON_OBJECT()
、JSON_ARRAY()
和 JSON_QUOTE()
等函数可以将 JSON 数据转换为 MYSQL 中的 JSON 格式。
要从 JSON 数据中检索值,可以使用 ->
和 ->>
运算符(箭头运算符)。其中 ->
运算符返回 JSON 对象或数组的元素或属性,而 ->>
运算符返回字符串值。
以以下 JSON 数据为例:
{
"person": {
"name": "tom",
"age": 20,
"address": {
"province": "guangdong",
"city": "guangzhou"
}
}
}
可以使用以下 SQL 语句获取 JSON 数据中的值:
SELECT
JSON_EXTRACT('{
"person": {
"name": "tom",
"age": 20,
"address": {
"province": "guangdong",
"city": "guangzhou"
}
}
}', '$.person.name') AS name, // 获取 name 值
JSON_EXTRACT('{
"person": {
"name": "tom",
"age": 20,
"address": {
"province": "guangdong",
"city": "guangzhou"
}
}
}', '$.person.address.city') AS city // 获取城市名称
在上述示例中,我们使用 JSON_EXTRACT()
函数获取 JSON 数据中的值。 $
符号用于指定 JSON 路径,以便返回我们需要的值。
下面是输出:
+------+------------+
| name | city |
+------+------------+
| "tom" | "guangzhou"|
+------+------------+
我们已经介绍了如何在 MySQL 中使用 JSON 获取值。使用 JSON 数据类型和相关函数,可以轻松存储和检索 JSON 数据。MySQL 还提供了其他有用的 JSON 函数,如 JSON_SEARCH()
、JSON_CONTAINS()
、JSON_MERGE()
等,这些函数可以大大简化我们的工作。