我的ContainsTable查询无效 - 请帮忙:)

时间:2009-04-22 12:12:50

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

我有一个全文目录设置。它的独特钥匙数为117,共有19件。该表仅有19行。

该表有一个名为ClientGuid的NVARCHAR(50)字段。这是最后一些奇怪文本的指南。

例如..

  1. 8b6ef4a504dd1a57f079180e7f6eb4a0( - )
  2. 8b6ef4a504dd1a57f079180e7f6eb4a0(OK)
  3. (不,我没有定义文本字段数据 - 我们从第三方API中获取它。

    anways,这是我的sql和我对它运行的查询。当我运行查询时,我得到ZERO结果:(

    ALTER FUNCTION [dbo].[Foo_HiJonSkeet]
    (   
        @ClientGuid NVARCHAR(50)
    )
    RETURNS TABLE 
    AS
    RETURN 
    (
        SELECT KEY_TBL.[Key] as LogEntryId,
            KEY_TBL.RANK as Relevance
        FROM CONTAINSTABLE(LogEntries, ClientGuid, @ClientGuid) AS KEY_TBL
    )
    
    
    SELECT * FROM  Foo_HiJonSkeet('8b')
    

    有什么建议吗? 服务器是Sql Server 2008。

1 个答案:

答案 0 :(得分:0)

您可以尝试以下构造:

SELECT * FROM  Foo_HiJonSkeet('"8b*"')

在原始搜索字词后添加双引号和星号。它应该工作。

但如果所有搜索都与您上面发布的示例类似,我建议您使用LIKE语句,而不是使用全文搜索。