我正在尝试将全文搜索筛选到同时具有tag.id = 3 AND tag.id = 9
的所有文档。
到目前为止,我有这样的方法:
{
"query": {
"bool": {
"filter": [
{
"bool": {
"must": [
{
"term": {
"tags.id": "3"
}
},
{
"term": {
"tags.id": "9"
}
}
]
}
}
]
}
}
}
这似乎和这个一样:
{
"query": {
"bool": {
"filter": [
{
"term": {
"tags.id": "3"
}
},
{
"term": {
"tags.id": "9"
}
}
]
}
}
}
两种选择之间有什么区别吗?
Tldr
由于两者的工作原理相同,唯一的区别是表达式的复杂性。
为了简单起见,我建议使用后一个。