![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 1 Dołączył: 2.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie.
Wiem, że problem znany i lubiany, ale trochę ciężko mi było znaleźć to o czym myślę. Otóż chciałbym zrobić serwis internetowy, w którym będą tagi. Po pierwsze będą proste tagowania np. hobby, nazwy zwierząt, nazwy kwiatów, miejscowości, umiejętności użytkowników i jeszcze kilka. Tutaj wydaje się być to prosta sprawa czyli np. tab_hobby - tab_hobby_laczenie_uzytkownik - tab_uzytkownik (łączenia przez id) i tak podobnie do innych. Zastanawiam się też nad tagowaniem tabel łączących hobby i użytkownika. użytkownik posiada pewne hobby i chciałby je opisać słowami kluczowym. np. wędkarstwo: ryby, wędka, wędkowanie, łowienie, jezioro białe, glinki Zauważmy, że są to jego prywatne słowa kluczowe i nie koniecznie tyczą się one do samego wędkowania, ale też miejsc gdzie on sam to robi. zaprojektowałem tabele: tab_hobby , tab_hobby_laczenie_uzytkownik , tab_hobby_laczenie_uzytkownik__laczenie_slowa , tab_slowa Jak widać sporo tabel, niema powtarzanie danych, ale zapytanie będą bardzo długie bo żeby np. znaleść użytkownika, który jako słowa kluczowe do hobby wpisał konkretną rzecz i do tego wyświetlić inne informacje o użytkowniku to trzeba konstruować długaśne zapytania przechodzące przez wiele tabel łączących. Pytanie: czy to jest dobre podejście do problemu (IMG:style_emoticons/default/questionmark.gif) czy takie rozwiązanie przyśpieszy zapytania czy lepiej tak długich zapytań nie konstruować i uprościć system. Jeśli słabo opisałem problem proszę wyrozumiałość i ewentualnie pytania. Ten post edytował billy235 18.02.2011, 10:35:28 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
A nie lepiej dać dodatkową kolumnę w tabeli łączącej relację N-N i tylko potem filtrować przez WHERE w całym zapytaniu?
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 1 Dołączył: 2.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
nie zrozumiem za bardzo.
Co miała by ta kolumna przechowywać. Może ja przedstawię uproszczoną strukturę tabel w chodzącą w skład tego zagadnienia z tagowaniem tagowania (IMG:style_emoticons/default/smile.gif) bo trochę niejasno się wyraziłem wcześniej Tutaj jest: Diagam Ten post edytował billy235 18.02.2011, 12:13:30 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 15:40 |