mam pewne pytanie - chciałbym zrobić sobie na stronie pełne seo. Jak wiadomo, na większości stron artykuły sa jakoś numerowane i potem zapytanie szuka w bazie artykułu o danym id. Przykład z wykorzystaniem rewrite:
adres_strony/artykul1/bezsensowny-tekst
na
adres_strony/artykuly.php?artykul_id=1
No i mamy zapytanie do bazy:
SELECT * FROM artykuly WHERE artykul_id=".$_GET['artykul_id']."
kwestię zabezpieczenia przed sql injection pomijam
Powiedzmy że chciałbym zrobił pełne seo, bez numeracji:
adres_strony/artykul/tytul
na
adres_strony/artykuly.php?artykul_url=tytul
i analogicznie:
SELECT * FROM artykuly WHERE artykul_url=".$_GET['artykul_url']."
No i dochodzimy do mojego pytania - czy skorzystanie z pełnego seo i przeszukiwania tabeli pod kątem wartości typu varchar będzie wolniejsze niż w przypadku wartości typu int? Zakładam, że i w pierwszym i drugim wypadku na wartość jest wrzucony indeks (w obu wypadkach artykul_id robi za primary key, w drugim artykul_url jest dodatkowym indeksem).
Co lepiej zrobić biorąc za najważniejszy element wydajność? Czy spadek wydajności przy szukaniu na varchar jest odczuwalny i na tyle istotny, żeby rezygnowac z pełnego seo?