在ElasticSearch中,如何检查字段是否存在,则应仅返回布尔值(True或False)

2024-06-17 13:36:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我想检查Elasticsearch文档中是否存在数据。 响应应为布尔值“True”或“False”

例如,在Python中:

Flag = ES.indices.exists(index=INDEX_Name) 

仅返回TrueFalse。像上面的查询一样,我想知道在PYTHON中是否有查询。检查数据并返回布尔值

例如,数据集

"_source":{
           name: "John",
           age: 31, 
           city: "New York"
          }

Tags: 数据name文档falsetruesourceindexes
1条回答
网友
1楼 · 发布于 2024-06-17 13:36:02

为了达到这个目标,您需要在代码中实现这个逻辑。默认情况下,Elasicsearch返回响应中“hits”参数内的数据。您需要在查询中定义条件并进行搜索。如果有任何文档返回,则返回true,否则返回false。因此,python中的代码如下所示:

Flag = bool(len(ES.search(index=INDEX_Name, body=your_query).get("hits").get("hits") ))

相关问题 更多 >