我只想在数组中的第一个元素上搜索对象,而忽略其余的元素。例如,对于下面的数据,如果我只想在模型
中搜索vehicle
数组中的第一个元素。
{
"drivers" : [
{
"last_name" : "McQueen",
"vehicle" : [
{
"make" : "Powell Motors",
"model" : "Canyonero"
},
{
"make" : "Miller-Meteor",
"model" : "Ecto-1"
}
]
},
{
"last_name" : "Buzz",
"vehicle" : [
{
"make" : "Powell Motors",
"model" : "Canyonero"
},
{
"make" : "Miller-Meteor",
"model" : "Ecto-1"
}
]
}
}
我知道我可以这样做一个嵌套查询,但这里的问题是所有的车辆都被搜索。我只希望车辆列表中的第0个元素被搜索,其余的被忽略。
{
"query": {
"nested": {
"path": "driver",
"query": {
"nested": {
"path": "driver.vehicle",
"query": {
"bool": {
"must": [
{ "match": { "drivers.vehicle.model": "Canyonero" } }
]
}
}
}
}
}
}
}
理想情况下,我需要类似{drivers.vehicle[0].model“:”Canyonero“}
这样的东西来每次搜索列表中的第一辆车。有什么方法可以有效地做到这一点吗?
看看这个答案--这样做当然是可能的,但相当麻烦。
相反,我建议使用
我正在使用Nest连接到ElasticSearch并执行一些查询。到目前为止,在给定一个通配符查询的情况下,我能够得到我想要的结果,如下所示: 但是现在我需要为某个用例的查询添加附加条件。 我需要的不仅是通过查询,还需要其他两个匹配的字段: 搜索术语"*" field 1="一些字符串" field="一些指南" 我确信在弹性搜索中一定有办法做到这一点(使用Nest),但我还没有找到它。 我知道我
问题内容: 我对ES还是相当陌生,并正在将其用于我的新项目。首先,我为客户提供了一个简单的映射,其中包含名字和姓氏以及付款信息对象列表。如果我在SQL中执行此操作,那将类似于客户表和具有1:许多关系的付款信息表。 这是我要执行的操作的一个简单示例:https : //gist.github.com/anonymous/6109593 我希望根据payInfos嵌套数组中的任何匹配项找到任何客户,即
问题内容: 可以说我们有一个名为acls的类,该类有一个名为lprop的List属性。 现在,让我说我还有另一个列表,其值分别为1,3,5,并且说此变量名称为tosearch。 我想通过使用巢来搜索elasticsearch索引中的acls类型记录lprop属性中的tosearch值,并且仅找到一个匹配项就足够了。 例如: 问题答案: 使用查询
如果我有一个双打数组: 我想得到第一个元素和最后一个元素,这样 我该怎么做?
问题内容: 我有一个JSON数组 我将如何搜索8097并获取内容? 问题答案: 使用该函数将JSON字符串转换为对象数组,然后遍历该数组直到找到所需的对象:
这是我的阵列 我想做的是:写一个函数 例如:将返回18将返回19等等