![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 56 Pomógł: 0 Dołączył: 15.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Mam tabelę z polami "tag" oraz "produkt". Może się zdarzyć że produkty maja takie same tagi, a więc zawartość pola tag często sie powtarza.
Chciałbym pobrać 5 najpopularniejszych tagów, ale nie chcę pisać 5 osobnych zapytan tylko optymalnie zmiescic sie w jednym. Na razie mam coś takiego:
Jak najlepiej dodać do tego pobieranie ilości wystąpień tagu? No i oczywiście jak ułożyć WHERE żeby pobrało 5 najpopularniejszych? Ten post edytował Haczyk67 5.12.2009, 15:55:35 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
LEFT/RIGTH określają "kierunek łączenia" tabel. Czy łączymy wszystkie rekordy z tej po lewej dopasowując wyniki z drugiej, czy wszystkie rekordy z tabeli po prawej dopasowując rekordy z pierwszej. W tym konkretnym przypadku to nie ma znaczenia, bo jest relacja 1 do 1 (konkretne id po obu stronach), ale w przypadku gdy jest wieloznaczność, to ma to już duże znaczenie. Poza tym w przypadku braku dopasowania domyślnie brakujące dane są uzupełniane NULLami. Są różne rodzaje łączeń i musisz po nich po prostu poczytać więcej by wiedzieć kiedy jakie stosować.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 06:45 |