如何在mysql json数组数据中编写SELECT查询

时间:2019-06-11 06:13:14

标签: php mysql json database

我正在尝试从数组json获取电子邮件,但它返回空值

[
    {
        "name": "Arun", 
        "email": "arun@arun.com"
    }, 
    {
        "name": "Arun kumar",
        "email": "arunkumar@gmail.com"
    }
]

我的Json查询是select json->>"$.name" as email from json

但是此查询返回空值

2 个答案:

答案 0 :(得分:2)

这应该有效,

JSON_EXTRACT(yourstring, '$[*].email')

您的字符串-数据库中的json数据或字段
$是用于搜索json对象的json语法 *表示所有多维数组
email以*值检查电子邮件

答案 1 :(得分:2)

我测试了以下内容,并为您处理了json示例

$json='[{"name": "Arun", "email": "arun@arun.com"}, {"name": "Arun kumar", "email": "arunkumar@gmail.com"}]';
$data=json_decode($json,true);

foreach ($data as $key => $value) {
    echo $value["email"] . "<br>";
}