0

我正在尝试SELECT基于roles属性值的对象。

示例:选择所有names角色所在的位置1//response 将返回danny

查询语句:

SELECT JSON_EXTRACT(username,'$[*].name') FROM objects WHERE JSON_CONTAINS(username,'1','$[*].roles')

列:用户名(JSON)

[
    {
        "name":"jordan",
        "roles":[1,2,5]
    },
    {
        "name":"danny",
        "roles":[1,4]
    }
]

问题:为什么我的语句不只返回包含 name 的第一个对象danny

4

1 回答 1

0

尝试以下操作:

SELECT * 
FROM objects 
WHERE JSON_CONTAINS(components, '1', '$.roles');
于 2017-05-31T17:15:36.587 回答