通常elasticsearchでQUERY_STRINGのクエリで、私が行うことができます:私は名前はフレッドと等しくないすべての文書を検索するElasticsearchクエリ文字列クエリと等しくない?
name:"Fred"
。そのための適切な構文は何ですか?私は試しました:
name!="Fred"
0のドキュメントを返しますが。
通常elasticsearchでQUERY_STRINGのクエリで、私が行うことができます:私は名前はフレッドと等しくないすべての文書を検索するElasticsearchクエリ文字列クエリと等しくない?
name:"Fred"
。そのための適切な構文は何ですか?私は試しました:
name!="Fred"
0のドキュメントを返しますが。
あなたはmust_not声明
{
"query": {
"bool" : {
"must_not" : {
"term" : {
"name" : "Fred"
}
}
}
}
}
と、あるいはなくてブールクエリを使用する必要がありますフィルタ
and:
{
"filtered" : {
"query" : {
"term" : { "name.first" : "shay" }
},
"filter" : {
"and" : {
"filters" : [
{
"term" : { "name.first" : "something" }
},
{
"term" : { "name.first" : "other" }
}
]
}
}
}
}
or:
{
"filtered" : {
"query" : {
"term" : { "name.first" : "shay" }
},
"filter" : {
"or" : {
"filters" : [
{
"term" : { "name.first" : "something" }
},
{
"term" : { "name.first" : "other" }
}
]
}
}
}
}
not:
{
"filtered" : {
"query" : {
"term" : { "name.first" : "shay" }
},
"filter" : {
"not" : {
"filter" : {
"term" : { "name.first" : "someting" }
}
}
}
}
}