全文搜索附近不起作用

时间:2012-02-02 15:08:28

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

我在列上使用全文索引,填充索引(完全填充)。 列中的文本是varchar(max)葡萄牙语评论。

我认为所有查询都应该返回相同的内容,但它们不会:

    select
        *
    from reviews
    where
        contains (ds_review, 'word1 NEAR word2')

    (returns 0 rows)

    select
        *
    from reviews
    where
        ds_review like '%word1 word2%'

    (returns 1 row)

    select
        *
    from reviews
    where
        contains (ds_review, ' word1 and word2 ')

    (returns 0 row)

    row:
    word1 word2

2 个答案:

答案 0 :(得分:0)

select * from reviews where ds_review like '%word1 word2%'

word1的%infront就像一个通配符,使其成为 _ _word1,其中空白是任何东西,只要在空白之后,该单词与word1匹配,就像前缀一样。 %fix可能会为您提供结果解除修复。

有关更多信息,请访问此处 http://www.w3schools.com/sql/default.asp

答案 1 :(得分:0)

我发现了问题:

对于葡萄牙语," melhor",在此示例" word1"中,是一个干扰词。创建一个自定义停止列表,删除" melhor"和" melhores"从噪音词解决了问题。