小编典典

如何在SQL全文“包含”函数中转义双引号?

sql

如何在MS SQL“包含”函数中转义双引号字符?

SELECT decision
FROM table 
WHERE CONTAINS(decision, '34" AND wide')

通常contains()期望双引号将一个精确的短语括起来以匹配,但是我想搜索一个实际的双引号字符。我尝试用\,`甚至另一个双引号将其转义,但是没有一个起作用。

PS我意识到也可以使用LIKE语句来完成类似这样的简单示例,但是我需要使用全文本搜索功能。出于示例目的,我在此处提供的查询已从我的实际查询中简化了。


阅读 373

收藏
2021-03-10

共1个答案

小编典典

文档

标点符号被忽略。因此,CONTAINS(testing, "computer failure")将行与值 “我的电脑在哪里?找不到它会很昂贵”
匹配

由于FULLTEXT甚至没有索引标点符号,因此您需要使用来对结果进行精细过滤LIKE

SELECT  decision
FROM    table 
WHERE   CONTAINS(decision, '34 AND wide')
        AND decision LIKE '%34"%'

这将保留全文的好处。

2021-03-10