gpt4 book ai didi

mysql - 选择json数组中符合mysql条件的所有对象

转载 作者:行者123 更新时间:2023-11-29 09:49:35 26 4
gpt4 key购买 nike

当 mysql 中的 json 字段内的数据满足某些条件时,我需要捕获行。我将运行什么选择来获取返回的行,其中 json 列在数组中的任何对象中状态值为 1000?

我尝试使用这样的东西:

SELECT * FROM table WHERE Task_JSON->"$[0]" = 1000;

我使用的mysql服务器版本:5.7.11

[
{
"Sequence":"1" ,
"Status":"1000"
},
{
"Sequence":"2" ,
"Status":"1000"
},
{
"Sequence":"3" ,
"Status":"3000"
}
]

最佳答案

您可以使用以下解决方案 JSON_CONTAINS :

SELECT *
FROM table_name
WHERE JSON_CONTAINS(Task_JSON, '{"Status":"1000"}') > 0;

使用 JSON_SEARCH 的另一个解决方案:

SELECT * 
FROM table_name
WHERE JSON_SEARCH(Task_JSON, 'one', '1000', NULL, '$[*]."Status"') IS NOT NULL;

demo: https://www.db-fiddle.com/f/3JTQreVi63FS7HbmWQ9TEM/4

关于mysql - 选择json数组中符合mysql条件的所有对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55039502/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com