我是 flex 搜索的新手。
我创建了一个索引,并添加了一个映射文件。
映射文件内容:
{
"properties": {
"funds": {
"properties": {
"name": {
"type": "text"
}
}
}
}
}
用_doc / 1添加了一个文档。
当我使用邮递员工具使用
{"query" : { "match_all" :{} }}
搜索时,数据即将到来。就像我添加过滤器时一样,得到空结果。
{ "query" : {
"bool" : {
"filter" : [
{
"term" : {
"funds.name" : "xyz"
}
}
]
}
}
}
谁能建议我做错了什么。
最佳答案
您应该使用match
查询而不是term
查询,因为funds.name
是分析文本(即text
类型):
{
"query": {
"bool": {
"filter": [
{
"match": { <--- change this
"funds.name": "xyz"
}
}
]
}
}
}
关于elasticsearch - 即使有记录, Elasticsearch 也不会给出结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61677169/