【问题标题】:MS SQL Contains with blank spaces between wordsMS SQL 包含单词之间的空格
【发布时间】:2019-06-24 15:27:39
【问题描述】:

我有以下 ms sql 语法来查找所有包含这些单词的行:

select * from Expat_MA where CONTAINS (zusammen,'"*hans*" AND "*Level 4*"');

这是我的数据库专栏,搜索正在这里进行:

我只想要黄色标记的行,但结果是我得到了所有 4 行。

怎么了?

【问题讨论】:

  • 列有全文索引吗?见here
  • @Peter Smith:是的,我有全文索引
  • 然后看看上面引用的答案中关于引号和模糊匹配的使用的一些cmets。
  • 你试过不带通配符吗?您正在搜索的只是'hans AND "level 4"
  • 试试CONTAINS (zusammen,'"hans*" AND "Level 4*"')

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


【解决方案1】:

我认为通配符会产生误报。请尝试以下操作:

select * from Expat_MA 
where CONTAINS (zusammen,'hans AND "Level 4"');

【讨论】:

    【解决方案2】:

    不妨试试这个:

    select * from Expat_MA 
    where CONTAINS (zusammen,'"hans" AND "Level" AND "4"');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-12
      • 2017-01-20
      • 1970-01-01
      • 2023-03-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多