DQLhtml
curl -XPOST 'localhost:9200/bank/account/_search?pretty' -d ' { "query": { "match_all": {} } }'
java apijava
QueryBuilder qb = QueryBuilders.matchAllQuery(); SearchResponse searchResponse = client.prepareSearch("bank").setTypes("account").setQuery(qb).get();
sqlsql
select * from account limit 0,10
DQLapi
curl -XPOST 'localhost:9200/bank/account/_search?pretty' -d ' { "query": { "match_all": {} }, "from": 20, "size": 40 }'
java apicurl
QueryBuilder qb = QueryBuilders.matchAllQuery(); SearchResponse searchResponse = client.prepareSearch("bank").setTypes("account").setQuery(qb).setFrom(20).setSize(20).get();
sqlelasticsearch
select * from account limit 20,20
DQLide
curl -XPOST 'localhost:9200/bank/account/_search?pretty' -d ' { "query": { "match_all": {} }, "sort": { "age": { "order": "desc" } } }'
java apiui
QueryBuilder qb = QueryBuilders.matchAllQuery(); SortBuilder sb = SortBuilders.fieldSort("age").order(SortOrder.DESC); SearchResponse searchResponse = client.prepareSearch("bank").setTypes("account").setQuery(qb).addSort(sb).get();
sqlurl
select * from account order by age desc limit 0,10
DQLcode
java api
QueryBuilder qb = QueryBuilders.matchAllQuery(); SearchSourceBuilder ssb = new SearchSourceBuilder(); ssb.docValueField("age"); SearchResponse searchResponse = client.prepareSearch("bank").setTypes("account").setQuery(qb).setSource(ssb).get();
sql
select age from account
DQL
curl -XPOST 'localhost:9200/bank/account/_search?pretty' -d ' { "query": { "bool": { "should": [ { "match": { "firstname": "sargent" } }, { "match": { "lastname": "ayala" } } ] } } }'
java api
QueryBuilder qb1 = QueryBuilders.termQuery("firstname", "sargent"); QueryBuilder qb2 = QueryBuilders.termQuery("lastname", "ayala"); QueryBuilder qb = QueryBuilders.boolQuery().should(qb1).should(qb2); SearchResponse searchResponse = client.prepareSearch("bank").setTypes("account").setQuery(qb).get();
sql
select * from account where firstname = 'sargent' or lastname='ayala' limit 0,10
DQL
curl -XPOST 'localhost:9200/top_user/_search?pretty' -d ' { "query": { "filtered": { "query": { "match_all": {} }, "filter": { "range": { "age": { "gte": 20, "lte": 40 } } } } } }'
java api
QueryBuilder qb = QueryBuilders.rangeQuery("age").gt(20).lt(40); SearchResponse searchResponse = client.prepareSearch("bank").setTypes("account").setPostFilter(qb).get();
sql
select * from account where age >=20 and age <=40 limit 0,10
DQL
curl -XPOST 'localhost:9200/top_user/_search?pretty' -d ' { "size": 0, "aggs": { "group_by_city": { "terms": { "field": "age", "order":{ "_count":"desc" } } } } }'
java api
AggregationBuilder aggs = AggregationBuilders.terms("group_by_age").order(Terms.Order.term(false)).field("age"); SearchResponse searchResponse = client.prepareSearch("bank").setTypes("account").setSize(0).addAggregation(aggs).get();
sql
select count(*) from account group by age order by count(*) desc
DQL
curl -XPOST 'localhost:9200/top_user/_search?pretty' -d ' { "size": 0, "aggs": { "group_by_gender": { "terms": { "field": "gender", "order": { "average_score": "desc" } }, "aggs": { "average_age": { "avg": { "field": "age" } } } } } }'
java api
AggregationBuilder sub = AggregationBuilders.avg("avg_age").field("age"); AggregationBuilder aggs = AggregationBuilders.terms("group_by_gender").field("gender").subAggregation(sub); SearchResponse searchResponse = client.prepareSearch("bank").setTypes("account").setSize(0).addAggregation(aggs).get();
sql
select avg(age) as avg_age from account group by gender order by avg_age desc