如何通过Kibana查询ElasticSearch以选择具有字段X的项目?
例如,我有一个带有字段{"a": {"type": "string"}, "b": {"type": "string"}}
的映射,以及两个文档
{"a": "lalala"}
{"a": "enoheo", "b": "nthtnhnt"}
我想找到第二个文档而不知道其b
究竟是什么。
答案 0 :(得分:5)
使用exists filter,例如:
POST /test_index/_search
{
"filter": {
"exists": {
"field": "b"
}
}
}
编辑:如果您需要Lucene查询字符串查询,则应执行此操作:
POST /test_index/_search
{
"query": {
"query_string": {
"query": "b:*"
}
}
}
以下是我用来测试它的一些代码:
http://sense.qbox.io/gist/ad336a0888a279bfdace03e217bf1915adbf0fe2
答案 1 :(得分:3)
距离给出这些答案已经有一段时间了。如果有人需要更新的答案,文档现在提供此示例以选择具有特定字段的结果。
以查询字符串语法:
其中字段
title
具有任何非空值:_exists_:title