2009-10-20 86 views
0

我想使用SQL SERVER 2008全文搜索來獲取包含單詞或短語的記錄作爲字段中的整個文本,而不是作爲文本中的文本的一部分領域。 例如: 我有許多記錄包含單詞「繼承」作爲字段中的整個文本和其他字段中包含相同的單詞之間,在字段中的文本的開始和結尾處。我只想將包含「繼承」單詞的記錄作爲記錄中的整個文本。使用SQL Server搜索短語全文搜索

謝謝。

+0

這個問題對我來說不是很清楚......既不是你想要做什麼,也不是你要求什麼。 –

+0

例如(記錄的值爲'繼承',記錄的值爲'材料繼承'或'2009年之前的繼承')我需要獲取具有值「繼承」的記錄,而不是包含繼承字的所有記錄 - 全文搜索的行爲。 –

回答

2

如果你只是想在某一特定領域的特定字符串完全匹配的行,你不需要使用全文在所有的搜索,只是一個普通的SQL查詢:

select * from the_table where the_field = 'inheritance' 
+1

我正在搜索的表有5億條記錄,並且該字段爲nvarchar(max)。 在這種情況下,全文搜索的性能優於使用=運算符。 –

0

根據這應該工作的文檔,

WHERE CONTAINS(thefield, '"Inheritance*" AND NOT "Inheritance *"'); 

由於我們沒有任何全文搜索啓用數據庫,因此無法在此處進行測試。