2010-11-16 22 views
1

我在varbinary(max)filestream列上創建了全文索引。我的PDF和XML都存儲在這個文件流中,因此兩者都被編入索引。不過,我真的不想索引這些XML文件,因爲恐怕隨着時間的推移,他們會膨脹我的索引並拖慢速度。所以我真正想做的只是在PDF文件中使用我的全文索引。有沒有辦法做到這一點?我可以以某種方式禁用XML過濾器,也許?從全文索引中排除文件類型

回答

1

假設您能夠通過常規的WHERE謂詞(例如WHERE type ='pdf')區分兩種類型的行,那麼您可以創建一個索引視圖,將行篩選爲僅需要索引的行,然後全文索引索引視圖而不是表格。但是,您需要查詢視圖而不是表格來使用FTI。

+0

有趣的想法。任何想法通過搜索索引視圖可以找到什麼缺點?也許更慢? – Jagd 2010-11-16 18:28:05

+0

索引視圖就像一個表,它有自己的聚集索引,這意味着所有數據都從表中複製到(物化)視圖中。你可以添加索引到它,並真正使用它就像一個普通的表。但是有一些限制,主要是定義視圖的SQL的本質。如果您在所有想要使用視圖索引的查詢中沒有使用Enterprise Edition(儘管這不適用於全文索引),您還需要指定「WITH(NOEXPAND)」查詢提示。 – 2010-11-16 19:53:08