【问题标题】:Removing full text search results删除全文搜索结果
【发布时间】:2013-12-06 09:59:10
【问题描述】:

我目前正在使用 CONTAINSTABLE 作为全文搜索的一部分,但不知道如何产生否定搜索。例如 包含:热狗 不包含:宠物健康问题

我当前的搜索非常适合查找内容,但我如何添加否定词以删除提及宠物健康问题的文章。

我希望这是有道理的,我尝试搜索 CONTAINSTABLE 否定、排除等但找不到任何东西。

编辑: 这可能不是最有效的解决方案,但会创建一个包含“不包含”结果的临时表,然后将 AND NOT IN(临时表)添加到原始查询中。是一个非常糟糕的主意?

【问题讨论】:

    标签: sql-server full-text-search


    【解决方案1】:

    SQL Server FTS 有一个 not 关键字;你应该可以的

    containstable(*,'"hot dogs and not "pet health issues")
    

    【讨论】:

    • 实际上应该说如果您使用 * 而不是在包含表中指定列 SQL Server FTS 将过滤器作为跨列的 OR 运行,这可能会产生令人困惑的结果。
    • 这很好,但不是工作正常。该列是从一开始就指定的,因此没有问题。
    猜你喜欢
    • 1970-01-01
    • 2012-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多