弹性搜索 - 如果通过检查数组是否为空来判断条件
Elastic Search - if condition by checking if array is not empty
我刚刚在我的数据库上实现了 ELASTIC SEARCH,对此我还是很陌生。我必须编写必须-
的查询
搜索数据库字段 "name" 用户输入的搜索文本。
用户还可以对搜索文本应用过滤器,例如国家/地区数组或颜色数组或任何标签数组
它必须检查是否应用了任何过滤器,然后才将其与数据库中的相应字段相匹配。
mongo 中的查询如下:
aggregate.match({ '$text': { '$search': searchString } });
if(portarray){
aggregate.match({ 'Port' : { $in:portArray } });
}
if(countriesArray){
aggregate.match({ 'country' : { $in: countriesArray } });
}
请帮我解决这个问题。
我建议您阅读 Elasticsearch 官方教程,例如:this artice
例如,回答你的第一个问题,你应该查询:
GET /yourIndexName/_search
{
"query":
{ "match":
{ "Name": "Pablo Escobar" }
}
}
我刚刚在我的数据库上实现了 ELASTIC SEARCH,对此我还是很陌生。我必须编写必须-
的查询搜索数据库字段 "name" 用户输入的搜索文本。
用户还可以对搜索文本应用过滤器,例如国家/地区数组或颜色数组或任何标签数组
它必须检查是否应用了任何过滤器,然后才将其与数据库中的相应字段相匹配。
mongo 中的查询如下:
aggregate.match({ '$text': { '$search': searchString } });
if(portarray){
aggregate.match({ 'Port' : { $in:portArray } });
}
if(countriesArray){
aggregate.match({ 'country' : { $in: countriesArray } });
}
请帮我解决这个问题。
我建议您阅读 Elasticsearch 官方教程,例如:this artice
例如,回答你的第一个问题,你应该查询:
GET /yourIndexName/_search
{
"query":
{ "match":
{ "Name": "Pablo Escobar" }
}
}