一尘不染

在SQL Server上逐字使用SOUNDEX()

sql

这是我的问题。例如,我有一个表 Products ,其中包含一个字段 Name

Products
ID | Name | ..
1  | "USB Key 10Go"
2  | "Intel computer"
3  | "12 inches laptop computer"
...

我目前正在为iPhone Web应用程序实现一个简单的搜索引擎(SQL Server和ASP .NET,C#),并且我想使用SOUNDEX()SQL
Server函数。

问题是,我不能直接SOUNDEX在“ 名称” 字段上使用。(由于名称中有多个单词,因此这是无关紧要的。)我想将该SOUNDEX功能应用于“
名称” 字段中的每个单词,然后查看它们是否与所研究的关键字匹配。

如果有人知道如何执行此操作,那将是很棒的。


阅读 142

收藏
2021-03-17

共1个答案

一尘不染

您是否研究过SQLServer中的全文本搜索功能?我知道这并非您所要的。只是SOUNDEX()函数用于查找相似的SOUNDING名称(例如:SMITH和SMYTHE听起来相同)。但是,在搜索引擎中,单词的发音方式不如搜索词本身重要。全文搜索还允许您使用同义词(允许您指定在应用程序上下文中具有相同含义的某些单词),并在搜索过程中自动考虑它们。

查看这些页面以获取有关SQL Server中的全文本搜索的更多信息:

全文搜索简介

内含物

可容纳

自由文本

自由文本表

2021-03-17