相关度如何利用SQL语法来实现站内搜索的相关度排序!
  例:
     标题             内容
 1. 8万元创业        创业的资金
 2. 创业艰苦创业难   创业的艰辛谁人知道啊当用户搜索“创业”关键字的时侯,2这条新闻的匹配度要高一些,就让2排在前面,!各位有没有什么办法或写法啊。!
[create] table t
(标题 varchar(200),内容 varchar(200))insert t values ('8万元创业','创业的资金')
insert t values ('创业艰苦创业难','创业的艰辛谁人知道啊')gocreate function f_sort(@biao varchar(1000),@split varchar(100))
returns int
as
begin
 declare @i int
 select @i=0
 while(charindex(@split,@biao)>0)
 select @i=@i+1,
        @biao=stuff(@biao,charindex(@split,@biao),len(@split),'')
 return(@i)
end
go
select * from t where charindex('创业',标题)>0 order by dbo.f_sort(标题,'创业') descdrop function f_sort
drop table t标题                                                 内容                                                 
-------------------------------------------------- -------------------------------------------------- 
创业艰苦创业难                                            创业的艰辛谁人知道啊
8万元创业                                              创业的资金(所影响的行数为 2 行)
我重新修改了一下,因为我发现如果存在两个以上的那么要判断一个排名,所以,我觉得根据字符的位置来排含字符相同的。[create] table t
(标题 varchar(50),内容 varchar(50))insert t values ('8万元创业','创业的资金')
insert t values ('创业艰苦创业难','创业的艰辛谁人知道啊')
insert t values ('发挥艰苦创业创业精神','创业的艰辛谁人知道啊')
insert t values ('发挥艰苦创业的创业精神','创业的艰辛谁人知道啊')
insert t values ('今天发现了个美人','发现美人的艰辛谁人知道啊')
gocreate function f_sort(@biao varchar(1000),@split varchar(100))
returns varchar(30)
as
begin
 declare @i int,@j int,@k int
 select @i=0,@j=0
        ,@k=case when charindex(@split,@biao)=1 then 1 else 0 end
  while(charindex(@split,@biao)>0)
 select @i=@i+1,
        @biao=stuff(@biao,1,charindex(@split,@biao)+len(@split)-1,''),
        @j=case when charindex(@split,@biao)=1 then @j+1 else @j end
 return(right(10000+isnull(@i,0),4)+right(10000+@k,4)+right(10000+@j,4))
end
go
select * from t where charindex('创业',标题)>0 order by dbo.f_sort(标题,'创业') desc
drop function f_sort
   
标题                                                 内容                                                 
-------------------------------------------------- -------------------------------------------------- 
创业艰苦创业难                                            创业的艰辛谁人知道啊
发挥艰苦创业创业精神                                         创业的艰辛谁人知道啊
发挥艰苦创业的创业精神                                        创业的艰辛谁人知道啊
8万元创业                                              创业的资金(所影响的行数为 4 行)drop table t--参考