Elastyczny kolejność wyszukiwania dla kilku wartości

0

Pytanie

Ja упорядочиваю wyniki wyszukiwania w elastycznym przeszukiwania (created_at,rate,updated_at..), ale to sprawia, że wyniki za niestosowne. część zapytania sortowania to: [['_score' => ['order' => 'desc']],['created_at' => ['order' => 'desc']]]; Który jest posortowana według _score i efekt created_at naprawdę niski. Jeśli zmienię go na [['created_at' => ['order' => 'desc']],['_score' => ['order' => 'desc']]]; wynik będzie zupełnie inny i będzie posortowana według created_at, a efekt _score naprawdę niski. Muszę coś w rodzaju sortowania za pomocą stworzony z wagą 1 i sortowania z _score z wagą 5, aby moje wyniki były полуупорядочены według daty i odpowiadały.

przykład: Moje dane to nazwa,ocena,created_at, na przykład 1:['niebieska koszulka epic',5,'2021-11-21'] , 2:['czerwona długa koszulka epic',4,'2021-11-20'] , 3:['epickie białe spodnie',5,'2021-11-22'] , 4:['эпикс deszczowej pogody", 5, "2021-11-23"] a ja szukam "epicką t-shirt", więc ocena będzie, na przykład, 5,4.5,4,1, więc kolejność wyników będzie 1, potem 2, potem 3, ale kiedy zamówię ją za pomocą created_at po zakończeniu wyszukiwania, kolejność wyników będzie 4, potem 3, potem 2, a następnie 1 i 4 nawet nie obejmuje "epicką t-shirt". wynik, który mam na myśli, jest równy 3, a następnie 2 i 1, a następnie 4, więc moje wyniki są połączone i są uporządkowane według created_at ( nie w pełni uporządkowane, ale created_at wpływa na nich ) to samo dzieje się przy zamawianiu z prędkością.

elasticsearch
2021-11-20 13:43:11
1

Najlepsza odpowiedź

0

Jedyne rozwiązanie, które znalazłem, to zainstalować min_score, aby wyniki, które nie mają nic wspólnego z wyszukiwaniem, zostały usunięte, a następnie zamów pole, które lubię, żeby nie było nietrafnych wyników. jedyny problem z tym rozwiązaniem polega na tym, że jeśli twoje zapytanie nie jest zbliżony do danych, nie dostaniesz żadnego rezultatu w odpowiedzi bez min_score, masz co najmniej kilka nieistotnych wyników, gdyby nie było odpowiedniego rezultatu.

2021-11-23 10:18:19

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................