![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 6.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam problem z zapytaniem. Chciałbym jednym zapytaniem przeszukać 7 tabel, wyniki posegregować po najbardziej trafnych i ustawić LIMIT x,10. Na razie zrobiłem SELECT'a dla dwóch tabel (bez stronicowania i sortowania wyników):
Jakbym dodał limit na końcu to wyniki z drugiej tabeli by się wcale nie wyświetliły (nawet jakby słowo szukane było trafione w 100%) dlatego chciałbym posortować wyniki od najlepiej pasujących i wtedy dopiero ograniczyć wyświetlanie. Przeszukałem już sporo stron, i sporo się dowiedziałem ale nie mogę znaleźć rozwiązania na własnie ten problem. Z góry dzięki ! -- EDIT -- Trochę pokombinowałem i uzyskałem coś takiego:
Ale od razu można zauważyć, że score wyników jest zależny od ilości wyników z danej tabeli. Chciałbym każdą tabelę ograniczyć aby nie "przytłumiła" wyników z drugiej tabeli ("sprawiedliwość"). Już prawie jest to co chce uzyskać ale to tylko prawie... :/ Czyli jak zrobić aby waga nie była uzależniona od ilości wyników TYLKO o samej trafności słowa ? Ten post edytował Sztef89 7.11.2011, 14:30:48 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 6.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Szczerze jeszcze nie słyszałem o czymś takim (IMG:style_emoticons/default/smile.gif) Ale po lekturze to może być bardzo przydatne w moim projekcie.
Co do zastosowania widoku to mam główne pytania: 1. Przeszukiwanie z użyciem widoku polegałoby na zrobienie widoku z wszystkich 7 tabel, a następnie ten widok należałoby przeszukać metodą MATCH... AGAINST... ? 2. Nie trzeba robić indeksu do tego widoku aby go przeszukiwać powyższa metodą ? 3. Czy takie rozwiązanie byłoby wydajne ? 4. Czy stworzony widok jest tymczasowy czy raz stworzony można używać wiele razy ? 5. Co jak zawartości tabel się zmienią (dojdą nowe rekordy) - widok wtedy będzie zawsze "zaktualizowany" ? Trochę dużo pytań wyszło ale odpowiedzi na nie rozwiążą moje wszystkie wątpliwości. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 01:53 |