Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何为多个范围创建查询?_Reactjs_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Reactjs,elasticsearch" /> elasticsearch,Reactjs,elasticsearch" />

Reactjs 如何为多个范围创建查询?

Reactjs 如何为多个范围创建查询?,reactjs,elasticsearch,Reactjs,elasticsearch,我遇到了如何创建多范围查询的问题 所以我使用一个库,它使用一个setQuery函数创建一个查询,该函数接受一个对象 现在,我的函数创建了一个单一的范围查询,运行良好。我遵循了,所以它符合我目前写的,这是 const queryObject={ 查询:{ 范围:{ [搜索类型]:{ gte:从, lte:to, boost:2.0, }, }, }, 值:queryItem, }; 但我似乎找不到任何具有类似形状的多个范围的文档。 关于如何处理这个问题有什么建议吗 谢谢 成功了! 假设我有一个范

我遇到了如何创建多范围查询的问题

所以我使用一个库,它使用一个
setQuery
函数创建一个查询,该函数接受一个对象

现在,我的函数创建了一个单一的范围查询,运行良好。我遵循了,所以它符合我目前写的,这是

const queryObject={
查询:{
范围:{
[搜索类型]:{
gte:从,
lte:to,
boost:2.0,
},
},
},
值:queryItem,
};
但我似乎找不到任何具有类似形状的多个范围的文档。 关于如何处理这个问题有什么建议吗

谢谢

成功了! 假设我有一个范围数组

const sampleRanges=[{from:1990,to:1992},{from:1993,to:1995},{from:1996,to:2002}]
我创建了一个函数来映射这些值

const generateRangeQuery=()=>{
返回sampleRanges.map(值=>({
范围:{
[搜索类型]:{
gte:value.from,
lte:value.to,
boost:2.0,
},
},
}));
};
然后,对多个范围的查询应如下所示:

const query = {
  query: {
    bool: {
      should: generateRangeQuery(),
      minimum_should_match: 1,
      boost: 1.0,
    },
  },
};

这对我有用

考虑接受你自己的答案,这样你的问题就不会显示为“未解决”:)谢谢!直到几个小时/几天后,它才让我回答,我忘了跟进:)