ElasticSearch に関する 2 つの質問があります。
1) 特定のフィールドの結果を降順でソートするように指定する方法はありますか? 同等の SQL クエリは次のようになります。
select * from table1 where a="b" order by myprimarykey desc;
2) 最初と最後 (最新) のレコードを取得する方法は?
ElasticSearch に関する 2 つの質問があります。
1) 特定のフィールドの結果を降順でソートするように指定する方法はありますか? 同等の SQL クエリは次のようになります。
select * from table1 where a="b" order by myprimarykey desc;
2) 最初と最後 (最新) のレコードを取得する方法は?
1) Elasticsearch には、並べ替え順序を制御できる非常に洗練された並べ替え APIがあります。したがって、elasticsearch では、MySql クエリに相当するものは次のようになります。
{
"query" : {
"term" : { "a" : "b" }
},
"sort" : [
{ "myprimarykey" : "desc"} }
]
}
ソートは _search URIで指定することもできます。
desc
2) 最初と最後のレコードを取得するには、asc
ソート順で2 つの検索を実行し、それぞれのレコードを 1 つ取得する必要があります。Multi Search APIを使用して、両方のクエリを組み合わせることができます。