【发布时间】:2019-07-31 11:34:42
【问题描述】:
我有一个带有表单数据的弹性搜索数据库
record = {#all but age are strings
'diagnosis': self.diagnosis,
'vignette': self.vignette,
'symptoms': self.symptoms_list,
'care': self.care_level_string,
'age': self.age, #float
'gender': self.gender
}
我想为vignette中的数据创建一个词云。
我尝试了各种查询,我得到错误 400,这意味着我不明白如何查询数据库。
我正在使用 python
这是我能够提出的唯一成功的查询
def search_phrase_in_vignettes(self, phrase):
body = {
"_source": ["vignette"],
"query": {
"match_phrase": {
"vignette": {
"query": phrase,
}
}
}
}
res = self.es.search(index=self.index_name, doc_type=self.doc_type, body=body)
查找字段“vignette”中包含phrase 的任何记录
我认为一些聚合应该可以解决问题,但我似乎无法使用“aggr”编写正确的查询。
希望得到一些帮助,了解如何在 python 中正确编写最简单的聚合查询。
【问题讨论】:
标签: python elasticsearch elasticsearch-aggregation