SQL字根匹配

我想知道那里的主要SQL引擎(MS SQL,Oracle,MySQL)是否能够理解2个单词是相关的,因为它们共享相同的根。 我们知道在搜索“网络”时很容易匹配“网络”,因为后者是前者的子串。 但是,在搜索“网络”时,SQL引擎是否具有可以匹配“网络”的功能? 非常感谢。     
已邀请:
此功能称为词干分析器:一种可以从任何形式的词中推导出词干的算法。 这可能相当复杂:例如,俄语单词
шёл
иду
是同一动词的不同形式,尽管它们没有一个共同的字母(具有讽刺意味的是,英语也是如此:
went
go
)。 对于在单词之间不使用空格的某些语言来说,分词也是一项非常复杂的任务。
SQL Server
允许使用可插拔的词干分析器和断字器作为其全文搜索引擎: http://msdn.microsoft.com/en-us/library/ms142509.aspx     
我认为主题是“语义相似性”。有几项努力试图找到解决这个问题的最佳方案。     
您可以尝试使用soundex,尽管它可能不是您想要的。请参阅http://www.codeproject.com/KB/database/Phonetic_Search_MSSQL.aspx。     
正如Quassnoi指出的那样,这可以通过词干来完成。如果你打开它,PostgreSQL会实现全文搜索。
ALTER TEXT SEARCH CONFIGURATION blah_en ADD MAPPING FOR english_stem;
这使用了基于Porter词干分析器的Snowball词典。 Porter干扰器可能是最广泛使用的干扰器之一,因此它将提供不错的结果。但重要的是要记住,干预并不总是像你想的那样准确。     

要回复问题请先登录注册