Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> similar_text w MySQL
#luq
post
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:

  1. SELECT foo.id FROM foo WHERE SIMILAR( foo.name, 'jakis string' ) > 0.9


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...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Ten pomysł jest ok, ale stworzyłbym dodatkową kolumne przedstawiajaca ilosc znakow w słowie.
Dzięki temu np jak szukasz słowo "test" to założysz warunek
  1. dlugosc_slowa BETWEEN 2 AND 6
co jeszcze lepiej ograniczy wyniki

Jeżeli chcesz szukać jeszcze inaczej zainteresuj się n-gramami.
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: 26.12.2025 - 22:16