mysql从json字段中查询内容

场景

假如在 mysql 数据表 detail 中有一个 json 字段 result,字段里的内容是这样的:

{
    "status": true,
    "msg": "success",
    "data": [
        {
            "name": "华宇大药房",
            "address": "北京市朝阳区顺义路115号"
        }
    ]
}

要在查询时直接提取 address 的内容。

code

这么写 mysql 查询语句:

select
  id,
  JSON_UNQUOTE(JSON_EXTRACT(JSON_EXTRACT(JSON_EXTRACT(result, "$.data"), '$[0]'), '$.address')) as address
from
  detail;

输出:

mysql> select id, JSON_UNQUOTE(JSON_EXTRACT(JSON_EXTRACT(JSON_EXTRACT(result, "$.data"), '$[0]'), '$.address')) as address from detail;
+----+-------------------------+
| id | address                 |
+----+-------------------------+
|  1 | 北京市朝阳区顺义路115号 |
+----+-------------------------+
1 row in set (0.00 sec)

标题:mysql从json字段中查询内容

原文链接:https://beltxman.com/4302.html

若无特殊说明本站内容为 行星带 原创,未经同意请勿转载。

发表评论

您的电子邮箱地址不会被公开。

Scroll to top