求相似关键词检索的方案,急,5月期间在线等

huhan3 2008-05-12 05:00:15
困扰了很多天了,现上来请db版的高人给支个招。

目标:实现相似查询:数据库某表中有一个关键词字段,通过输入不定长度一句话如“ABCDEFGHIJK宋祖德LMNOPQRST”,能查出此字段中所有的,在输入的语句中相似的关键词,比如根据其中的“宋祖德”查出“宋祖英”。其中对于“相似”的定义,暂定为至少两个紧挨着的字相同,或两个间隔一个字的字相同,比如"axb"和"ayb"认为是相似的。

说明:如果用patindex函数加通配符,似乎可以实现查出关键字中的几个字在输入的语句中出现,但如何控制其前后的顺序,似乎想不出办法了。比如,输入"xxxxxxxxABCxxxxxx",应该可查出相似的"AOC",但如果是输入"AxxxxxxxxBxxxxxxC",就不应该再查出此关键词了。

另外:SOUNDEX(), DIFFERENCE()这两个方法暂不考虑了,因为我的参数是一个长句字符串。循环嵌套也暂不考虑,我的关键字数据库中会有好几十万的数据,性能也是一个需要面对的问题。
...全文
223 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
huhan3 2008-05-16
  • 打赏
  • 举报
回复
问题点数:100 回复次数:0 显示所有回复显示星级回复显示楼主回复 修改 删除 举报 引用 回复

? csdn出问题了? 为什么我的回复次数变成0了?
huhan3 2008-05-14
  • 打赏
  • 举报
回复
chuifengde兄,能否说的稍微详细点.
另外,如果我把输入的中文拆掉,做了分词处理,比如说拆出了"宋祖德",想根据"宋祖德"检索出"宋祖英",这个时候怎么实现好?
huhan3 2008-05-14
  • 打赏
  • 举报
回复
楼上的flairsky看题,首先我是把一个整句作为条件,like '%ab%' 就根本行不通
flairsky 2008-05-14
  • 打赏
  • 举报
回复
其中对于“相似”的定义,暂定为至少两个紧挨着的字相同,或两个间隔一个字的字相同,比如"axb"和"ayb"认为是相似的

就这一句
like '%ab%' or like '%a?b%'

能达到要求否?
chuifengde 2008-05-14
  • 打赏
  • 举报
回复
属于分词技术领域,可以查找分词的相关资料
huhan3 2008-05-14
  • 打赏
  • 举报
回复
自己顶一下
ojuju10 2008-05-12
  • 打赏
  • 举报
回复

搜索引擎可以帮你解决问题!
Limpire 2008-05-12
  • 打赏
  • 举报
回复
建立/维护一个关键字字典
dawugui 2008-05-12
  • 打赏
  • 举报
回复
貌似没法解决.

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧