3

全文検索は初めてですが、次のクエリのように使用する代わりに、Containsを使用して検索を実行するにはどうすればよいですか。

Select * From Students Where FullName LIKE '%abc%'

ありがとう

4

3 に答える 3

2

次のスクリプトを使用して、カタログが最後にいつ作成されたかを確認します。

DECLARE @CatalogName VARCHAR(MAX)
SET     @CatalogName = 'FTS_Demo_Catalog'

SELECT
    DATEADD(ss, FULLTEXTCATALOGPROPERTY(@CatalogName,'PopulateCompletionAge'), '1/1/1990') AS LastPopulated
    ,(SELECT CASE FULLTEXTCATALOGPROPERTY(@CatalogName,'PopulateStatus')
        WHEN 0 THEN 'Idle'
        WHEN 1 THEN 'Full Population In Progress'
        WHEN 2 THEN 'Paused'
        WHEN 3 THEN 'Throttled'
        WHEN 4 THEN 'Recovering'
        WHEN 5 THEN 'Shutdown'
        WHEN 6 THEN 'Incremental Population In Progress'
        WHEN 7 THEN 'Building Index'
        WHEN 8 THEN 'Disk Full.  Paused'
        WHEN 9 THEN 'Change Tracking' END) AS PopulateStatus
FROM sys.fulltext_catalogs AS cat

現在の結果を表示するには、全文索引の再作成が必要になる場合があります。FTS 列を定義してからデータをテーブルにロードした場合、検索インデックスは最新ではありません。

ここに画像の説明を入力

これを定期的に更新する必要がある場合は、Tech Net のこの記事をチェックしてください。

于 2012-05-08T18:34:28.157 に答える
2

何かのようなもの:

SELECT * From Students Where CONTAINS(FullName,'abc')

MSDN ドキュメントへのリンク

于 2012-05-08T15:44:27.787 に答える
0

「abc」が実際に探しているものと部分的に一致する場合は、CONTAINSステートメントを次のように変更します。

SELECT   * 
FROM     Students 
WHERE    CONTAINS(FullName, '"abc*"')

また

SELECT   * 
FROM     Students 
WHERE    CONTAINS(FullName, '"*abc*"')

出典: MSDN-CONTAINS

于 2012-05-08T19:07:59.077 に答える