использование термина в elasticsearch для запросов

Я скачал образец базы данных учетных записей json с веб-сайта elasticsearch.https://www.elastic.co/guide/en/elasticsearch/reference/current/_exploring_your_data.html

Я пытаюсь сделать несколько запросов поверх него.

Например,

curl -XGET 'http://localhost:9200/bank/account/_count?pretty' -d '{
    "query":{
    "filtered":{
    "filter":{
    "bool":{
    "should":[{"term":{"gender":"M"}},{"term":{"age":35}}]
    }
    }
    }
    }
    }'

получение вывода для этого правильно со счетом.

Но если я попытаюсь выполнить запрос ниже, я не получу правильный результат.

curl -XGET 'http://localhost:9200/bank/account/_count?pretty' -d '{
"query":{
"filtered":{
"filter":{
"bool":{                        
"should":[{"term":{"gender":"F"}},{"term":{"state":"PA"}}]
}             
}               
}                    
}      
}'

Я не получаю правильного результата. Что-то не так в синтаксисе запроса или способе его использования?

Может ли кто-нибудь помочь здесь!


person Soundarya Thiagarajan    schedule 20.09.2016    source источник
comment
Какой правильный результат? Чего вы ожидаете и что получаете?   -  person davide    schedule 20.09.2016
comment
например, с полом F и состоянием PA есть результаты. но все же я получаю счет как 0. но для первого запроса я получаю его правильно.   -  person Soundarya Thiagarajan    schedule 20.09.2016
comment
возможно, используйте pa, а не PA. но да, что вы пытаетесь получить здесь?   -  person blackmamba    schedule 20.09.2016
comment


Ответы (1)


Используйте строчные буквы при поиске

eg- f not F
    pa not PA

прочитайте это для лучшего понимания ElasticSearch не возвращает результаты для запроса условий против строкового свойства

person blackmamba    schedule 20.09.2016