【发布时间】:2009-04-21 12:57:34
【问题描述】:
我在单个表上有一个Full Text Catalog,定义了三个字段:-
TABLE: Animals
Fields: Name, Breed, LatinName.
现在,目录似乎运行良好。
例如。
CREATE FUNCTION AnimalSearch
(
@Name NVARCHAR(200)
) RETURNS TABLE AS
RETURN
(
SELECT KEY_TBL.[Key] as Name,
KEY_TBL.RANK as Relevance
FROM CONTAINSTABLE(Animals, Name, @Name) AS KEY_TBL
)
现在,当我运行它时,我得到以下结果:- 姓名 = ma(无结果) 名称 = 垫子(无结果) 名称 = matt(1 个结果 - 正确)。
SELECT * FROM [dbo].[AnimalSearch]('ma')
这是正确的使用方法吗?我也试过用FREETEXTTABLE 替换CONTAINSTABLE .. 同样的事情.. 没有结果。
有什么想法吗?
编辑
我知道这可以在存储过程中实现。我希望将其作为表值函数来执行,因此我可以在某些 Linq2Sql 中使用它。如果真的表现不佳,请说出来。
【问题讨论】:
标签: sql-server linq-to-sql full-text-search user-defined-functions