Sql 数据库中的单数和复数搜索
我希望按照以下条件实现搜索:Sql 数据库中的单数和复数搜索,sql,sql-server-2008,full-text-search,Sql,Sql Server 2008,Full Text Search,我希望按照以下条件实现搜索: 搜索应根据多个关键字执行,例如关键字=人、猫、蝙蝠 搜索应该匹配关键字的单数和复数,若其中任何一个在数据库中可用,那个么该行应该在结果中可用 例如: Declare keyword varchar(max) = 'man,cat,bat' 要搜索的表: ID Name ----------- 1 man 2 men 3 cat 4 dog 5 bat 那么结果应该是 ID Name ----------- 1 man 2 men
Declare keyword varchar(max) = 'man,cat,bat'
要搜索的表:
ID Name
-----------
1 man
2 men
3 cat
4 dog
5 bat
那么结果应该是
ID Name
-----------
1 man
2 men
3 cat
5 bat
我想在SQLServer2008中实现此搜索。请提出一些创新的建议。我认为这可以通过全文搜索来完成,但我不知道怎么做 唯一的方法是建立一个复数词典。您可以从wiktionary.com获取数据有没有办法将sql server和全文搜索相结合?没有将单数英语单词转换为复数的通用规则,也没有sql命令可以执行此操作,只有一个命令包含每个英语单词及其复数对应词的列表(在不同的地方,像“绵羊”这样的词是它们自己的对应词)。我想这可以通过全文搜索来实现。我们都知道如何修改单词使其成为复数,但对于计算机来说,你必须把它们拼出来。大多数单词都加上“s”最后-猫=>猫,树=>树。然后是不规则的名词-人=>人,浆果=>浆果,土豆=>土豆,光环=>光环或光环,羊=>羊,章鱼=>章鱼或章鱼[章鱼在历史上是不正确的,因为章鱼是希腊语,而-i后缀是拉丁语…或者是另一种说法?]英语是一种不规则的语言,毫无意义。最简单准确的解决方法是查找表。