0

使用SQL Server 2012,我有一張表,當前有幾十萬行,並且會增長。全文索引是否適用於具有嵌入代碼值的列

在此表中,我有一個包含醫療記錄編號(MRN)值的nvarchar(30)字段。這些值可以是任何字母數字值,但不是單詞。

例如

DR-345687 
34568523 
*45612345;T 

我的應用程序允許終端用戶輸入值,在搜索字段中說「456」。應用程序需要返回全部三個示例記錄。

目前,我正在使用實體框架5.0,並要求field.Contains('456')類型的搜索。

這總是需要3-5秒才能返回,因爲它似乎在執行表搜索。

我的問題是:會創建一個全文索引這一欄的幫助性能?我還沒有嘗試過,因爲我擁有大量數據的數據庫的唯一副本目前正在進行QA試用。

看看全文索引的文檔,它似乎是圍繞單獨的單詞在字段值中進行了優化,所以我很猶豫如何在不知道如何影響性能的情況下創建索引我的查詢性能。

回答

1

EF不會使用訪問SQL Server全文索引(http://msdn.microsoft.com/en-us/library/ms142571.aspx#queries)所需的T-SQL關鍵字,因此如果沒有更多工作,您的解決方案將無法運行。

我想你將不得不創建一個SProc來使用FTI獲取數據,然後讓EF調用它。我有類似的問題,並有興趣知道你的結果。

Andy

+0

對解決方案感興趣不是答案。所以,請,如果你有一個問題不要猶豫,在這裏問一個http://stackoverflow.com/questions/ask – 2013-06-27 12:08:19

相關問題