我正在尝试使用弹性搜索的内部点击功能来检索子文档内容。我的查询包含两个has_child子句,如下面的代码片段所示。我所观察到的是,我只获得了内部点击响应中属于第二个子子句的那些子内容。看起来最后的内部点击覆盖了第一个内部点击。
有什么方法可以同时获得内心的点击率吗?
下面是我使用的查询。
{
"query":{
"bool":{
"must":[
{
"has_child":{
"type":"subformcontent",
"query":{
"bool": {
"must": [
{
"term":{
"txt_1.raw":"Malayalam"
}
},
{
"term":{
"parent_field_id":"1000"
}
}
]
}
},
"inner_hits":{
"size":10
}
}
},
{
"has_child":{
"type":"subformcontent",
"query":{
"bool": {
"must": [
{
"term":{
"txt_1.raw":"Malayalam"
}
},
{
"term":{
"parent_field_id":"1001"
}
}
]
}
},
"inner_hits":{
"size":10
}
}
}
]
}
}
}
https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-inner-hits.html 说
名字
用于响应中特定内部点击定义的名称。当在单个搜索请求中定义了多个内部命中时非常有用。默认值取决于在哪个查询中定义了内部命中。对于has_child查询和筛选器,这是子类型,has_parent查询和筛选器,这是父类型,嵌套查询和筛选器,这是嵌套路径。
我猜既然你没有定义名称,并且文档说默认值是has_child那么你可以为inner_hits查询定义名称。否则,两者都被命名为“子服从内容”,因此它们会相互覆盖。
{
"has_child":{
...
"inner_hits":{
"size":10,
"name": "hits_1"
}
}
},
{
"has_child":{
...
"inner_hits":{
"size":10,
"name": "hits_2"
}
}
}
潜在重复:如何在同一路径的多个嵌套子查询中返回多个内部命中?
我正在LDAP服务器上工作。它有弹性搜索。我必须用一些Javascript代码(JSON格式)发送查询。 这是我的查询: 我试图打印所有结果,其中“server”=“server\u name”(该字段是server:server\u name…)。我认为关于弹性搜索的文档太小了。我找到了一些文档,但都是一样的,对新用户没有帮助。这个例子太简单了。 此查询返回所有结果,包括任何筛选器。 Ps:这就
我有以下格式的弹性搜索文档 } } 我的要求是,当我搜索特定字符串(string.string)时,我只想获得该字符串的FileOffSet(string.FileOffSet)。我该怎么做? 谢谢
试图找出这个微不足道的例子的分数。我希望得到brenda eaton的文件,但我得到的是brenda fassie的最佳结果。
我在术语查询中要求弹性搜索中的嵌套字段,其中嵌套字段值应与术语查询中提供的值的数量完全匹配。例如,考虑下面的查询,在这里我们对名为类型的嵌套字段进行查询。 GET资产/_search 索引映射 样本文件: 上述查询应返回字段类型正好有2个值的文档,即“VOD”
创建新的。NET Framework 4.6.1控制台应用程序 为NEST 6.5.0和ElasticSearch.NET 6.5.0添加NuGet包 然后,我创建了一个新的弹性索引,其中包含具有“tags”属性的对象(类型为“mything”)。此标记是一组可能值中的随机逗号分隔的单词集。在测试中,我在索引中插入了100到5000项。我试了越来越少的可能的词在设置。