elasticsearch - 您好,我正在尝试在我的节点 js 应用程序的弹性搜索中使用通配符查询和过滤器
问题描述
我从用户那里得到搜索项
let eventSearch="*"+event.SearchTerm+"*";
这是查询对象
let queryObject =
{
index: 'mark_deling_test2',
type: 'product',
body: {
"from" : event.StartIndex, "size" : event.ResultSize,
"query": {
"filtered":{
"query":{
"query_string":{
"fields": [ "Name^2.5", "Description", "keywords^1.75" ],
"query":eventSearch,
"analyze_wildcard":true
}
},
"filter":{
"term":{
"groups": "CA-IBO"
}
}
}
}
}
};
然后发送这个查询对象进行搜索
这是行不通的。如果我不使用过滤器,它会起作用。请帮忙!
解决方案
Get mark_deling_test2/_search
{
“query”: {
“bool”: {
“must”: {
“query_string”: {
“query”: “nut*“,
“fields”: [“Name”, “Description”, “keywords”]
}
},
“filter”: {
“term”: {
“groups”: “US-IBO”
}
}
}
}
}
推荐阅读
- java - 当用户答错问题时,我该如何结束这个游戏?
- php - Laravel7 CORS:被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:没有“Access-Control-Allow-Origin”
- react-native - React Navigation 5.x 嵌套导航抽屉未从菜单按钮打开
- go - 如何将 Go 的 GC CPU 使用率提高到 25% 以上?
- fortran - 即使某些等级不参与,MPI_IBcast 是否也能保证发送
- python - 当我尝试从 PIL 调整 img 的大小时,不能将序列乘以“float”类型的非整数
- javascript - 如何在括号编辑器中禁用 javascript 代码提示?
- android - android:onClick 按钮工作缓慢
- ios - 从单独的类运行方法时返回 Nil
- python - 用 True/False 替换 pandas 数据框所有列的整数