Chciałbym zapytać o dane, że user_id
jest '1'
i name
jest 'John'
. Łatwo jest napisać powszechnie używany kod SQL:Jak dołączyć 2 pasujące zapytania do zapytania dotyczącego elastycznego wyszukiwania?
select * from t where user_id = '1' and name = 'John';
Nie jest mi łatwo złożyć zapytanie o elastyczne wyszukiwanie.
Najpierw zrobiłem kwerendę dla user_id
:
{
"query" : {
"match" : {
"user_id" : "1"
}
}
}
a wyniki były tego się spodziewałem.
Następnie zrobiłem kwerendę dla name
:
{
"query" : {
"match" : {
"name" : "John"
}
}
}
To działa dobrze, też.
Ale nie mogłem utworzyć zapytania łączącego 2 warunki z operacją. Jak mogę dołączyć te dwa pasujące zapytania do jednego użycia i działania?
FYI docs zapytań bool zostały przeniesione [tutaj] (http://www.elastic.co/guide/en/elasticsearch/reference/1.4/query-dsl-bool-query.html) –
dziękuję . faceci elasticsearch powinni poważnie dodać przekierowanie do tego – Thorsten