elasticsearch Elasticsearch获取属性不为空的文档
如果我想返回所有属性为空的文档(elasticsearch Elasticsearch获取属性不为空的文档,elasticsearch,kibana,elasticsearch,Kibana,如果我想返回所有属性为空的文档(IMG),我可以这样做: GET something/_search/? { "query": { "term": {"IMG": ""} } } 它之所以有效,是因为IMG是一个关键字。如果我想要精确的倒数,这意味着获取IMG不为空的所有文档,我应该键入什么?是否存在术语的“反向”查询 换句话说,Elasticsearch是否有办法获取属性不为空的文档。将不得与术语查询一起使用。这应该起作用: GET memoire/_search/? {
IMG
),我可以这样做:
GET something/_search/?
{
"query": {
"term": {"IMG": ""}
}
}
它之所以有效,是因为IMG
是一个关键字。如果我想要精确的倒数,这意味着获取IMG
不为空的所有文档,我应该键入什么?是否存在术语的“反向”
查询
换句话说,Elasticsearch是否有办法获取属性不为空的文档。将
不得
与术语
查询一起使用。这应该起作用:
GET memoire/_search/?
{
"query": {
"bool": {
"must_not": {
"term": {"IMG.keyword": ""}
}
}
}
}
这里有一个解决方案。将
不得
与术语
查询一起使用。这应该起作用:
GET memoire/_search/?
{
"query": {
"bool": {
"must_not": {
"term": {"IMG.keyword": ""}
}
}
}
}
上面的解决方案还将返回字段为空的文档,我想这是您不想要的。因此,正确的解决方案是:
GET memoire/_search/?
{
"query": {
"bool": {
"filter": {
"exists": {
"field": "test"
}
},
"must_not": {
"term": {
"test.keyword": ""
}
}
}
}
}
上面的解决方案还将返回字段为空的文档,我想这是您不想要的。因此,正确的解决方案是:
GET memoire/_search/?
{
"query": {
"bool": {
"filter": {
"exists": {
"field": "test"
}
},
"must_not": {
"term": {
"test.keyword": ""
}
}
}
}
}
这个答案应该有帮助:谢谢你的评论。这并没有真正的帮助,因为这些答案检查的是存在,而不是空。对不起,你的意思是“属性不是空字符串”?@Val是的。顺便说一句,我刚刚找到了一个解决方案,并在下面贴了一个答案。请随意评论、编辑或发布您自己的答案!我也贴了一张;-)这个答案应该有帮助:谢谢你的评论。这并没有真正的帮助,因为这些答案检查的是存在,而不是空。对不起,你的意思是“属性不是空字符串”?@Val是的。顺便说一句,我刚刚找到了一个解决方案,并在下面贴了一个答案。请随意评论、编辑或发布您自己的答案!我也贴了一张;-)你有
must
而不是must\u not
@Val Woops+谢谢你!(我刚和kibana核实了一下“必须”一词,但我发错了!)。编辑,修正!查看我的解决方案,以确保您不会返回带有IMG:null
的文档。您有must
而不是must\u not
@Val Woops+谢谢你!(我刚和kibana核实了一下“必须”一词,但我发错了!)。编辑,修正!请参阅我的解决方案,以确保您不会返回带有IMG:null
的文档。