2017-10-26 1 views
0

Wie zu machen, wie diese Sortierung:Benutzerdefinierte Sortierung in Elasticsearch?

->orderByRaw('payed_promo >= ' . $time . ' DESC') 
->orderByRaw('payed_vip >= ' . $time . ' DESC') 
->orderBy('rating->urls->' . $url_1 . '->rating', 'DESC') 

Hier ist mein von MySQL Sortierung (Eloquent Laravel), wie dies auf Elasticsearch zu tun?

Antwort

1

Sie können den Parameter "sort" angeben.

Von offiziellen Dokumentation „zeigt alle passenden Ergebnisse zuerst nach Datum sortiert, dann nach Relevanz“:

"sort": [ 
     { "date": { "order": "desc" }}, 
     { "_score": { "order": "desc" }} 
    ] 

https://www.elastic.co/guide/en/elasticsearch/guide/current/_sorting.html

Es gibt auch „Boost“ Parameter, die die Standard-Ergebnisse Reihenfolge beeinflusst: https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-boost.html

Verwandte Themen