我使用similarity()
模块中的pg_trgm
函数在C#中为PostgreSQL数据库创建了模糊搜索。现在我想将此搜索移植到MySQL数据库,但MySQL没有类似的trigram功能。
有没有办法从MySQL中的PostgreSQL导入pg-trgm模块,还是有类似的Trigrams for MySQL实现?
不幸的是我还没有找到任何令人满意的实现。
由于安装,维护以及熟悉语法和配置,我不愿意使用像Solr这样的外部搜索引擎。
答案 0 :(得分:2)
我知道这个问题已经过时了,但是我在这里搜索了Google,并且我发现了一些新的信息。
从Mysql 5.7.6开始,内置支持在全文搜索中使用nGram。
答案 1 :(得分:0)
我不熟悉PostgreSQL,但是如果您使用的是Innodb存储引擎,那么请使用您要搜索“全文”搜索的列。然后您可以使用以下搜索语法来搜索您的内容
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