elasticsearch Elasticsearch精确匹配特定字段
我试图通过特定字段过滤我的elasticsearch索引,确切地说是“国家”字段。然而,我不断地得到大量其他不准确的结果(其他国家) 请有人给我指一下正确的方向 我尝试了以下搜索:elasticsearch Elasticsearch精确匹配特定字段,elasticsearch,lucene,exact-match,elasticsearch,Lucene,Exact Match,我试图通过特定字段过滤我的elasticsearch索引,确切地说是“国家”字段。然而,我不断地得到大量其他不准确的结果(其他国家) 请有人给我指一下正确的方向 我尝试了以下搜索: GET http://127.0.0.1:9200/decision/council/_search { "query": { "filtered": { "filter": { "term": { "country": "Algeria"
GET http://127.0.0.1:9200/decision/council/_search
{
"query": {
"filtered": {
"filter": {
"term": {
"country": "Algeria"
}
}
}
}
}
以下是一个示例文档:
{
"_index": "decision",
"_id": "54290140ec882c6dac5ae9dd",
"_score": 1,
"_type": "council",
"_source": {
"document": "DEV DOCUMENT"
"id": "54290140ec882c6dac5ae9dd",
"date_updated": 1396448966,
"pdf_file": null,
"reported": true,
"date_submitted": 1375894031,
"doc_file": null,
"country": "Algeria"
}
}
您可以改用match_短语查询
POST http://127.0.0.1:9200/decision/council/_search
{
"query" : {
"match_phrase" : { "country" : "Algeria"}
}
}
感谢您的回复-刚刚尝试了上述内容,仍然返回其他国家/地区。对不起,我的意思是Post not GET并非我所需要的:如果一个或多个单词匹配,它将返回,例如
旧标题
和旧标题1
与旧标题
匹配,那么不准确的结果是什么意思?你能举个例子吗?@femtoRgon所以我希望搜索只返回带有“国家”:“阿尔及利亚”字段的文档-但是,如果我运行搜索,它会返回所有不同国家的文档,例如“国家”:“斯里兰卡”。好吧,这似乎没有多大意义。你能运行,看看它在哪里找到这些文档的匹配项吗?@femtoRgon-我添加了:“explain”:true,-在搜索中的“query”上方-输出与不存在时没有区别。有趣的是,如果我这样搜索:“它返回正确的结果…”。。。怎样?为什么?