Как написать запрос SELECT в данных массива MySQL JSON - PullRequest
1 голос
/ 11 июня 2019

Я пытаюсь получить письмо из массива json, но оно возвращает нулевое значение

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

и мой запрос Json select json->>"$.name" as email from json

Но этот запрос возвращает нулевое значение

Ответы [ 2 ]

2 голосов
/ 11 июня 2019

Я проверил следующее и работал для меня на вашем образце 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>";
}
2 голосов
/ 11 июня 2019

Это должно работать,

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

yourstring - ваши данные или поле json в базе данных
$ - это синтаксис json для поиска объекта json * означает весь многомерный массив
email проверить электронную почту в * значениях

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...