0

Full Text Catalog3つのフィールドが定義された単一のテーブルがあります: -

TABLE: Animals
Fields: Name, Breed, LatinName.

現在、カタログ完全に機能しているようです。

例えば。

CREATE FUNCTION AnimalSearch
(
    @Name NVARCHAR(200)
) RETURNS TABLE AS
RETURN 
(
    SELECT KEY_TBL.[Key] as Name,
        KEY_TBL.RANK as Relevance
    FROM CONTAINSTABLE(Animals, Name, @Name) AS KEY_TBL
)

これを実行すると、次の結果が得られます:- Name = ma (結果なし) Name = mat (結果なし) Name = matt (1 つの結果 - 正しい)。

SELECT * FROM [dbo].[AnimalSearch]('ma')

これはこれを使用する正しい方法ですか?私も..同じものに置き換えCONTAINSTABLEてみました..結果はありません。FREETEXTTABLE

アイデアはありますか?

編集

これはストアド プロシージャで実現できることを理解しています。これをテーブル値関数として実行したいと思っていたので、これを Linq2Sql で使用できます。それが本当にパフォーマンスが悪い場合は、そう言ってください。

4

1 に答える 1

1

それが良い考えかどうかはわかりません。テーブル値関数は統計を格納しないため、パフォーマンスが低下する可能性があります。

于 2009-04-21T13:01:51.267 に答える