【发布时间】:2021-08-23 23:34:13
【问题描述】:
我使用的是 MySQL 5.7,表中的一列包含多个 JSON 文档。比如:
'[ {
"animal" : "dog",
"data" : {
"body" : "This sentence does not contain any thing about grooming",
}
},
{
"animal" : "cat",
"data" : {
"body" : "No grooming needed"
}
},
{
"animal" : "horse",
"data" : {
"body" : "He is grooming his horse after the ride."
}
}
]'
我想返回 $.data.body 多次包含 grooming 的所有行,但前提是 $.animal == horse。因此,在上面给出的示例中,它不应返回该行,因为 grooming 在 $.data.body 部分中仅使用一次,其中 $.animal == horse 。
有没有在 MySql/SQL 中查询这个的好方法?我可以在 python 中做到这一点,但有兴趣知道是否有办法在 SQL/MySQL 中做到这一点。谢谢!
【问题讨论】: