2013-08-07 10 views
5

Utworzono wyszukiwanie rozmyte w języku C# dla bazy danych PostgreSQL przy użyciu funkcji similarity() z modułu pg_trgm. Teraz chcę przenieść to wyszukiwanie do bazy danych MySQL, ale MySQL nie ma podobnej funkcjonalności trygramowej.Czy istnieje funkcja Trigram, taka jak pg_trgm (PostgreSQL) dla MySQL?

Czy istnieje sposób na import modułu pg-trgm z PostgreSQL w MySQL lub czy istnieje podobna implementacja trygramów dla MySQL?

Niestety nie udało mi się jeszcze znaleźć satysfakcjonującej implementacji.

Nie chcę używać zewnętrznej wyszukiwarki, takiej jak Solr, z powodu wysiłku instalacji, konserwacji i zapoznania się ze składnią i konfiguracją.

+0

Może to pomoże? http://stackoverflow.com/questions/3320698/what-is-the-best-way-to-implement-a-substring-search-in-sql – Benvorth

Odpowiedz

2

Wiem, że to pytanie jest stary, ale mam tutaj Google szukając tego i tam jest trochę nowych informacji Znalazłem również .

Od wersji Mysql 5.7.6 wbudowano obsługę programu nGram podczas wyszukiwania pełnotekstowego.

Mysql team article regarding ngram searches

0

Nie jestem zaznajomiony z PostgreSQL, ale jeśli korzystasz z aparatu magazynującego Innodb, ustaw kolumnę, w której zamierzasz szukać wyszukiwania "Full-Text". następnie można użyć następującej składni wyszukiwania do wyszukiwarki contant

SELECT subject, MATCH (subject) AGAINST ("Find This String") AS relevance_notes 
FROM yourTable 

http://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html#function_match

Powiązane problemy