我在 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”的记录,我猜这可能是原因。
但我也尝试在文本'"children*"' 上进行匹配,但 2008 年和 2012 年的结果仍然有很大不同。再次,返回的排名值CONTAINSTABLE
是不同的。
有人可以帮我吗?谢谢。