![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 162 Pomógł: 13 Dołączył: 16.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Otóż w moim projekcie mam zaimplementować system tagów (czyli wyszukiwanie rekordów po słowach kluczowych). Założyłem, że będzie je wprowadzał użytkownik. Problem pojawia się w implementacji gdyż jeszcze czegoś takiego nie potrzebowałem. Mam 2 koncepcje na to: 1) Tagi przechowywane w polu tekstowym i wyszukiwanie jako " LIKE '%tekst_taga%'"; 2) Każdy tag wrzucać do tabeli "tagi" i łączyć artykuł z danym tagiem w tabeli zliczeniowej; Które rozwiązanie jest lepsze zarówno pod względem wydajności jak i "profesjonalności" kodu? Szukałem na forum podobnych tematów ale znalazłem tylko proste wyszukiwarki tekstowe które nie są wystarczające dla mojego problemu. Z góry dzięki za odpowiedź. Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 085 Pomógł: 231 Dołączył: 12.05.2008 Ostrzeżenie: (0%) ![]() ![]() |
@up
Przykład jest chybiony, jeśli dla newsa będzie więcej niż jeden tag, jeśli natomiast po jednym do newsa, to faktycznie najlepsze rozwiązanie. Przy kilku tagach bez dodatkowego pola niewiele się zrobi (wiele do wiele bądź co bądź) Ja jednak utworzyłabym osobną tabelę, jeśli natomiast do jednego newsa można dodać wiele tagów, to oczywiście dwie osobne tabele. A tak naprawdę co jest bardziej wydajne możesz spokojnie sprawdzić - zlicz na jakichś przykładowych danych, który sposób wykonuje się szybciej. Mam wrażenie, że nie ta opcja z like, like bowiem jest dość mało wydajne i wolno działające. Ten post edytował Shili 25.05.2008, 18:43:51 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 05:06 |