Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyszukiwanie
Forum PHP.pl > Forum > Bazy danych > MySQL
pawkow
Chcę w tabeli użytkowników wyszukać ich wg. wpisanej frazy

Najszybciej byłoby where name = %pawkow%

zastanawiam sie jednak, czy bardziej optymalne nie bedzie rozwiązanie takie:

najpierw szukam where name = pawkow
zapisuje ID wyniku jeżeli jest

potem szukam where name = %pawkow and ID <> tamtych
zapisuje ID wyników

potem szukam where name = pawkow% and ID <> tamtych
zapisuje ID wyników

no i na koniec szukam name = %pawkow% and ID <> tamtych

co o tym myślicie ?

Pomysł dobry czy nie koniecznie ?
l0ud
Przeanalizuj to jeszcze raz, a zobaczysz, że tą metodą zwolnisz przeszukiwanie czterokrotnie. Czas jest potrzebny na przeszukanie tabeli - a nie znalezienie-zwrócenie wyników. To, że wykluczysz kilka ID nic nie pomoże...
Lejto
wyniki chyba by były i tak te same winksmiley.jpg, ja po części użył był twojego 1 sposobu i trochę tego 2 (bardziej skomplikowany) chyba wole ten 2, ale jeszcze jest ważne ja długo skrypt będzie się ładował
dr_bonzo
W obu przypadkach wykonujesz

name = %pawkow% [powinno byc LIKE]

co spowoduje zawsze przejrzenie calej tabeli i nie skorzysta z indeksow [i to bedzie najwolniejsze].
A w przypadku 2 wykonujesz jeszcze 3 inne zapytania - wiec jak to moze byc szybsze?questionmark.gif
Ewentualnie uzyj tego : http://www.depesz.com/index.php/2007/09/15...ng-up-like-xxx/

A jak masz malo rekordow: to zostaw %pawkow%
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.