【问题标题】:different results of CONTAINSTABLE in SQL Server 2008 and 2012SQL Server 2008 和 2012 中 CONTAINSTABLE 的不同结果
【发布时间】:2013-02-20 23:30:19
【问题描述】:

我在 SQL Server 2008 和 2012 中有 2 个相同的数据库,它们具有相同的全文索引设置。 但是当我执行CONTAINSTABLE 时,我得到了非常不同的结果。

SELECT course_id,course_name, full_desc, KEY_TBL.rank*20,MembershipType,cpl  
FROM Course_Search_TBL_WithDup AS cda with (nolock)INNER JOIN CONTAINSTABLE   
(Course_Search_TBL_WithDup, full_desc, '"children"',500) 
AS KEY_TBL ON cda.id = KEY_TBL.[KEY] 

似乎 2012 年和 2008 年 CONTAINSTABLE 会以不同的方式计算排名。因为两个数据库的结果排名不同,所以记录的顺序也很不同。

事实是,在属性“full_desc”中,我有值为“children”或“children's”的记录,我猜这可能是原因。

但我也尝试在文本“儿童*”上进行匹配,但 2008 年和 2012 年的结果仍然有很大不同。再一次,CONTAINSTABLE 返回的排名值是不同的。

有人可以帮帮我吗? 谢谢。

【问题讨论】:

    标签: sql-server-2008 sql-server-2012 containstable


    【解决方案1】:

    全文搜索在 SQL Server 2012 中发生了显着变化,请参阅以下博客文章了解不同之处以及如何在需要时恢复到旧行为的详细信息:

    SQL Server Full-Text Search (FTS) Blog

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多