Aplikacja „sprzedaż samochodów” – Result Grouping, dodanie kolejnych dwóch parametrów (cz. 7)

W poprzednim poście z tej serii opisaliśmy funkcjonalność grupowania wyników wyszukiwania. Dzisiaj chciałbym pokazać jak łatwo możemy ustalić ilość wygenerowanych grup i jak sortować dokumenty wewnątrz grupy.

Specyfikacja wymagań

Chciałbym stworzyć zapytanie grupujące, które w odpowiedzi pokaże mi ilość wygenerowanych grup, oraz dostarczy po jednym dokumencie w każdej grupie – dokumencie określającym auto o najniższej cenie w swojej grupie rocznikowej.

Opis parametrów requestu nowej funkcjonalności

Potrzebujemy następujących parametrów:

  • group.ngroups – parametr typu logicznego, który pozwoli nam na zawarcie w odpowiedzi ilości wygenerowanych grup
  • group.sort – parametr opisujący sposób sortowania dokumentów wewnątrz grupy

Tworzymy zapytanie

Posługując się zapytaniem z poprzedniego postu, dodajemy dwa nowe parametry:

Zauważmy, że poza dodaniem parametrów group.ngroups oraz group.sort, ustawiliśmy także wartość parametru group.limit na 1 (tak abyśmy otrzymali tylko jeden dokument w każdej grupie) oraz dodaliśmy do parametru fl pole określające cenę auta. W rezultacie otrzymujemy:

W odpowiedz pojawił nam się nowy element, określający ilość wygenerowanych grup:

W każdej grupie rocznikowej mamy po jednym dokumencie, jest to auto o najniższej cenie w swojej grupie. Nie wierzysz ? Przeanalizuj odpowiedzi zawarte w poprzednim poście i porównaj ceny 🙂

Podsumowanie

Był to szybki przegląd dwóch nowych parametrów powiązanych z funkcjonalnością grupowania wyników. Duże podziękowania dla Davida Martina za dostarczenie mi tematu poprzez dyskusję na temat poprzedniego postu 🙂

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

This site uses Akismet to reduce spam. Learn how your comment data is processed.