我在检索所有文档时遇到问题,这些文档没有按字段值对应的其他日志。我将不胜感激。最容易解释的是一个示例:
我有以下5个文档:
DOC1:
{
message: **Step1**,
id: 100
}
DOC2:
{
message: **Step2**,
id: 100
}
DOC3:
{
message: **Step1**,
id: 200
}
DOC4:
{
message: **Step2**,
id: 300
}
DOC5:
{
message: **StepX**,
id: 400
}
因此,我想作为查询的响应,是所有文档,其中Step1没有对应的Step2,其中id值相同。在下面的示例中,这是(我想响应): DOC3:
{
message: Step1,
id: 200
}
到目前为止,我所尝试的并不是我想要的结果。这会按ID和升序返回文档数,但是由于我们还有许多其他步骤,因此不可行,并且计数为1的结果并不总是正确的。
GET index/_search
{
"size": 0,
"aggs" : {
"langs" : {
"terms" : {
"field" : "id",
"size" : 10,
"order": {
"_count": "asc"
}
}
}
}
}
更多详细信息 作为回应,我需要不的文档,其中有2个文档与一个id字段相关(每个结果应该只有1个文档,且具有相关的id和message = Step1)。
答案 0 :(得分:0)
尝试一下...
{
"query": {
"bool": {
"must": [
{
"term": {
"id": "x"
}
}
],
"must_not": [
{
"exists": {
"field": "message"
}
}
]
}
}
}