Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 589 Pomógł: 91 Dołączył: 22.05.2008 Skąd: Gliwice Ostrzeżenie: (0%)
|
Potrzebuje na poziomie bazy wyciągnąć rekordy w których jedno z pól jest zbliżone w 90% do podanego ciągu. Tak w PHP jest funckja similar_text jednak to powinno się robić na poziomie bazy. Chodzi o coś takiego:
tyle, że takiej funkcji w MySQL nie ma (IMG:style_emoticons/default/winksmiley.jpg) Da się to w ogóle zrobić na MySQL`u? Na forum znalazłem identyczny temat http://forum.php.pl/index.php?showtopic=70797 jednak nie rozwiązany... |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 589 Pomógł: 91 Dołączył: 22.05.2008 Skąd: Gliwice Ostrzeżenie: (0%)
|
Okej to tak, zwykła odległość Levenstheina przy małych stringach powinna być mała.
Dostaje: Kod Ray TEST kant kant. Dla warunku < 3 wyniki są jak dla mnie zadowalające Kod kant kant. Ale przy długich stringach max 2 zmieny to imho mało, więc chyba zostanę jednak na procentowej wersji. Użyłem zmiennej i HAVING i nie zauważam zmniejszenia czasu wykonani, może jednak to nie jest liczone 2 razy?
Jeszcze jedna sprawa - dla tabelki w której mam ~1200 rekordów to jest strasznie wolne (~7 sec) więc pomyślałem, żeby nie mielić całej tabelki tylko rekordy o inentycznej pierwszej literze, wygląda to tak:
Prawie przy 'k' wykonuje się ~0.2 sec więc jest okej. Przy szukaniu literówek to chyba dobry pomysł bo raczej rzadko robi się literówkę w pierwszym znaku, chyba że ma ktoś inny pomysł? Ten post edytował #luq 21.05.2010, 09:57:15 |
|
|
|
#luq similar_text w MySQL 20.05.2010, 16:10:00
wookieb W mysql jest wyszukiwanie pełnotekstowe (FULLTEXT)... 20.05.2010, 16:19:50
#luq Super. Dzięki!
Btw. rozumiem, że to inne algo... 20.05.2010, 20:45:49
wookieb Jest to różnica algorytmów.
similar_text korzysta ... 20.05.2010, 20:58:54
#luq W sumie to dla mnie chyba bez różnicy który algory... 20.05.2010, 23:06:33
wookieb Przy prostych literówkach lepiej nie porównywać pr... 20.05.2010, 23:12:22
#luq Sprawdzę. Na pewno będzie to szybsze
Nie będę za... 20.05.2010, 23:29:44
wookieb Szczerze to nie chce mi się teraz kombinować ale w... 20.05.2010, 23:44:59
wookieb Ten pomysł jest ok, ale stworzyłbym dodatkową kolu... 21.05.2010, 10:16:56 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 21:40 |