从SQL Server获取匹配的名称

时间:2012-10-11 10:57:24

标签: sql sql-server sql-server-2008 full-text-search

我的问题是,我有一个人名及其成就的数据库。现在,我有一些包含人名的段落。我需要从这些段落中提取名称。应用程序的Web端将附加提取的名称的超链接及其活动。

我的数据库中的数据可能如下所示:

Name          |  Achievement
----------------------------------------                              
Steve Jobs    |  Founder of Apple
Bill Gates    |  Founder of Microsoft

现在我的字符串为:After saving up some money, Steve Jobs took off for India in the search of enlightenment.

我需要从上面的字符串中找到Steve Jobs并添加到超链接。 知道怎么做吗?

2 个答案:

答案 0 :(得分:0)

您应该以某种预先定义的格式保存数据,例如,您可以在开始时使用***& person name之类的结束。

在省下一些钱之后,***Steve Jobs***起飞前往印度探索启蒙。

然后,您可以通过查找***到sql

来提取人名

修改

我自己会尝试找到其他方法来做到这一点。例如,我将人员名称保存在单独的列中。

答案 1 :(得分:0)

SQL Server确实不是最好的地方,因为超链接是定义HTML,但是......

declare @s varchar(500) = 'After saving up some money, Steve Jobs took off for India in the search of enlightenment.'

select 
    @s = REPLACE(@s, name, '<a href="#">'+name+'</a>')    
from yourtable
where @s like '%'+name+'%'
select @s