Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL] pytanie o tagi
adam882
post
Post #1





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

Ostrzeżenie: (0%)
-----


Witam

Stworzyłem taką strukturę systemu tagów:

tabela z numerami id i nazwami tagów: ID|TAG
tabela wiążąca tagi ze stronami: ID|TAGID|STRONAID
oraz tabela ze stronami

Załóżmy, że dodając stronę dodaje z 8 tagów (w tym niektóre z 2-3 słowami).

Czy potem pisząc system wyszukiwania, zakładając, że szukam np. tagu "darmowe gry" i przy użyciu SELECT, dodając LEFT JOIN-y wyszukuje je jako WHERE tag="%darmowe%" AND tag="%gry%". Czy tego typu rozwiązanie może okazać się optymalne dla bazy danych? Chodzi mi o jak najmniejsze obciążanie bazy i najepszą wydajność tego rozwiązania.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Inaczej się tego nie da zrobić... Kwestia tylko zmodyfikowania zapytań, aby korzystały z indeksów.

  1. WHERE tag="%darmowe%" AND tag="%gry%"

Tak będzie przeszukiwać wiersz po wierszu.

A tak:
  1. WHERE tag="darmowe%" AND tag="gry%"

Skorzysta z indeksów.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 07:09