在SQL Server 2008 R2中,我正在对“C#”一词进行全文搜索,如下所示:
SELECT *
FROM Book b
WHERE CONTAINS (b.title , 'c#')
然而,全文搜索看起来像是剥离英镑符号然后执行搜索。
如果我使用通配符“喜欢”搜索,我会得到正确的结果:
SELECT *
FROM Book b
where title like '%c#%'
有没有办法对包含哈希/井号的术语进行全文CONTAINS
搜索?
答案 0 :(得分:1)
听起来全文搜索完全符合它的预期。要获得完全匹配,请将术语C#
放在双引号中以更改where子句。由于完全匹配根据定义区分大小写,因此您可以使用或搜索小写和大写版本。
WHERE CONTAINS(Name, '"C#" or "c#"');
答案 1 :(得分:0)
我没有沙盒来测试这个,但你试过CHAR(35)
哪个是英镑符号?您可以设置变量并将其与CHAR(35)
连接,这可能有用。