如何解决有关SQL Server全文本搜索语法的问题
|| 我正在尝试找出全文搜索语法的一些更详细的信息。我有一些基本知识,但遇到了以下问题。 在页面顶部附近,显示了需要双引号的情况,并包括示例“燕麦片”。为什么这需要双引号?这是错字吗? 在同一页底部附近,它指出在某些情况下,应将“ 0”,“ 1”,“ 2”或“ 3”的任何实例都用引号引起来。为什么?这些反话不是吗? 此页面提供了许多示例,包括带引号和未引号的搜索词。CONTAINS(Column,\'term\')
和CONTAINS(Column,\'\"term\"\')
有什么区别?
解决方法
1)全文搜索使用双引号作为文本定界符,并且使用双引号是一种很好的做法,尤其是当您可能使用更复杂的搜索词时。例如。您可以将短语或单词用双引号引起来。
\"Oatmeal\"
\"Hot Oatmeal\"
2)我认为“ and and not or or or not \”部分中的逻辑是为此找到布尔项并将内容两边用引号引起来。
e.g. OatMeal or Hot Oatmeal
翻译成
\'\"Oatmeal\" or \"hot oatmeal\"\'
而不是
\'oatmeal \"or\" hot oatmeal\'
3)应该是contains(column,\'terms \')containstable会使用3项查询containstable(table,column,\'terms \')我已经在这里对数据库进行了一些测试,其中包含30k个文档contains( ,\'\“ dentist \” \')和contains(,\'dentist \')返回相同的652行。 Containstable返回了他们相同的排名。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。