我要触发一个满足以下要求的SQL。
获取users
所在的posts
所在的地方;
posts
有很多comments
的地方;
comments
的 ALL 所在的地方,body
包含“ foo”。
因此,如果我有以下数据,则返回的users
应该是[userB]
。
users = [
{
"user_name": "userA",
"posts": [
{
"post_name": "postA",
"comments": [
{
"body": "foo"
},
{
"body": "bar"
}
]
}
]
},
{
"user_name": "userB",
"posts": [
{
"post_name": "postB",
"comments": [
{
"body": "foo"
},
{
"body": "foo"
}
]
}
]
}
]
我认为我可以通过触发一系列子查询来实现。
但是我想知道是否可以通过join
语句来实现。
因为我知道相关子查询在大多数情况下都具有较差的性能,所以我想通过使用join
或其他可以改善性能的方法来实现此目的。