2012-06-26 9 views
5

Interesujące wyzwanie; mój klient wprowadza pewne informacje o produkcie do bazy danych SQL. Produkt jest obrazem słynnego starego rosyjskiego kompozytora o nazwie Rachmaninoff. Więc ta nazwa znajduje się w polu opisu. Teraz tylko kilku klientów szukających produktów wie dokładnie, jak przeliterować tę nazwę, ale najczęściej jest błędnie napisane. Oprócz błędów pisowni, istnieje również wielu międzynarodowych klientów, którzy po prostu piszą tę nazwę zupełnie inaczej, jak Rachmaninow, Rahmaninov, Рахманінаў.Wyszukiwarka fuzzy SQL i ulepszenia podobne do Google

Jeśli umieściłabym te błędy lub tłumaczenia w Google to (prawie) zawsze wie, jak to poprawić i przekierować mnie bezpośrednio na właściwą stronę.

Czy ktoś wie, jakie są moje możliwości uzyskania części tej magii w wyszukiwaniu produktów? Czy mogę używać niektórych API? Jakiś super darmowy tekst, którego nie znam? Lub ...

Odpowiedz

2

Rozwiązaliśmy podobny problem z dużym sukcesem: Wyszukiwanie osób (imiona niemieckie) według nazw podanych przez telefon.

E.g .: Bardzo popularne niemieckie nazwiska "Schmidt", "Schmitt", "Schmied", "Schmid", "Schmit" i "Schmiedt" będą praktycznie niemożliwe do rozdzielenia, gdy zostaną podane głosem. Połącz to z imieniem "Sylvia" lub "Silvia" lub "Sylvya", a dzwoniący mówiąc "Cześć, jestem Sylvia Schmidt, zapomniałem mojego numeru klienta" nie ma szans na szybkie odnalezienie.

Nasze rozwiązanie polegało na stworzeniu listy synofonów, np. (w pseudo kodzie, dla języka niemieckiego):

{consonant}+ := {consonant} 
ie := i 
ii := i 
dt* := t 
y|j := i 
{vocal}v := {vocal}f 

itd., otrzymujesz dryf. Teraz zapisaliśmy ciągi tłumaczone synoptonem z oryginalnymi ciągami, aby umożliwić wyszukiwanie. Działa to naprawdę dobrze.

Rozumiem, że MySQL ma funkcję Soundex() dla angielskich napisów. Spodziewam się, że MSSQL będzie miał coś podobnego.

+0

OK, to brzmi jak całkiem niezłe rozwiązanie, które może trochę pomóc. – Tys

+0

Ale czy ktoś wie, gdzie możesz użyć https://developers.google.com/custom-search/v1/overview, aby uzyskać poprawki widoczne w witrynie Google? – Tys

+0

Nie możesz. Zostaną zastosowane do wyszukiwanych haseł, ale nie zostaną zwrócone. –