我如何执行搜索,排除字段具有特定值的结果?
我有一个Reddit评论数据库,我想找到提及比特币的信息,但不包括bitcoin subreddit。
curl -s -XGET 'http://localhost:9200/_search?pretty=true&size=100' -d '
{
"filtered": {
"query" : {
"match": {
"body": "bitcoin"
}
},
"filter": {
"not": {
"term": {
"subreddit": "bitcoin"
}
}
}
}
}'
错误已久,无法在此处发布。 https://gist.github.com/kylelk/feca416156712eebad3e
最佳答案
这是愚蠢的错误,
您必须在query中包含过滤查询。这是修改
POST _search
{
"query": {
"filtered": {
"query": {
"match": {
"body": "bitcoin"
}
},
"filter": {
"not": {
"term": {
"subreddit": "bitcoin"
}
}
}
}
}
}
希望这可以帮助!!