用mysql对象数组查询json列

oknwwptz  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(630)

我的列中有以下json数组:

[  
   {  
      "day": 1,
      "requests": 23
   },
   {  
      "day": 2,
      "requests": 5
   },
   {  
      "day": 2,
      "requests": 9
   }
]

我要有天的那一排 1 . 我已经试过了

SELECT * FROM api WHERE usages->'$[*].day' = JSON_ARRAY(1)

但它没有返回结果。

4ngedf3f

4ngedf3f1#

select usages->'$[*].day' from api 显示它是json数组 [1,2,2] . where usages->'$[*].day' = JSON_ARRAY(1) 正在尝试匹配 [1,2,2][1] 这不是真的。
相反,可以使用json来查找数组中的值。 where json_contains(usages->'$[*].day', "1");

相关问题