.net ElasticSearch在必须之间正确使用should
我必须使用.NET中ElasticSearch的“必须”和“应该”功能进行以下筛选:(1 | 2)和&(4 | 5 | 6)和&(6 | 7),但我不知道如何在“应该”筛选之间进行“必须”。我浏览了教程和文档,但找不到这方面的例子。 感谢您的帮助 你能帮我用Visual Basic表示这个吗?我得到的代码是:.net ElasticSearch在必须之间正确使用should,.net,vb.net,elasticsearch,.net,Vb.net,elasticsearch,我必须使用.NET中ElasticSearch的“必须”和“应该”功能进行以下筛选:(1 | 2)和&(4 | 5 | 6)和&(6 | 7),但我不知道如何在“应该”筛选之间进行“必须”。我浏览了教程和文档,但找不到这方面的例子。 感谢您的帮助 你能帮我用Visual Basic表示这个吗?我得到的代码是: Dim r As FilterContainer = Filter(Of view_Article).Bool(Function(b) b.Sh
Dim r As FilterContainer = Filter(Of view_Article).Bool(Function(b)
b.Should(lstAF.ToArray)
For Each item As ContainerList In lstAnyFilter
b.Should(item.list.ToArray())
Next
Return b
End Function)
Return r
但我认为这只是用新的过滤器替换当前的过滤器。如何进行多个单独的应筛选请求?您应该组合布尔筛选:
{
"query": {
"bool": {
"filter": {
"bool": {
"must": [
{
"bool": {
"should": [
{#FILTER1},
{#FILTER2}
]
}
},
{
"bool": {
"should": [
{#FILTER3},
{#FILTER4},
{#FILTER5}
]
}
},
{
"bool": {
"should": [
{#FILTER6},
{#FILTER7}
]
}
}
]
}
}
}
}
}
除了使用
bool过滤器
,还可以使用bool查询
。把它当作
{
"query": {
"bool": {
"must": [
{
"bool": {
"should": [
{Query1},
{Query2}
]
}
},
{
"bool": {
"should": [
{Query3},
{Query4}
]
}
}
]
}
}
}