IBM Books
(C) IBM Corp. 2000

Net Search Extender 管理およびユーザーズ・ガイド


SQL スカラー検索関数の場合の簡単な例

DB2 Net Search Extender の例では、以下のステップを使用します。

  1. データベースを作成する
  2. データベースをテキスト検索可能にする
  3. 表を作成する
  4. フルテキスト索引を作成する
  5. サンプル・データをロードする
  6. テキスト索引を同期させる
  7. テキスト索引で検索する

既存データベースを使用して、 オペレーティング・システムのコマンド行でサンプル・コマンドを発行することができます。 以下の例では、データベース名を sample とします。

データベースを作成する
以下のコマンドを使用して、DB2 のデータベースを作成できます。

db2 "create database sample"

データベースをテキスト検索可能にする
オペレーティング・システムのコマンド行で、 DB2 コマンドと同じように DB2 Net Search Extender コマンドを発行できます。 たとえば、Net Search Extender インスタンス・サービスを開始するには、 以下コマンドを使用します。

db2text "START"

DB2 Net Search Extender で使用するデータベースを作成するには、 以下のコマンドを使用します。

db2text "ENABLE DATABASE FOR TEXT CONNECT TO sample"

このステップは、それぞれのデータベースで 1 回だけ実行します。

表を作成する
db2 "CREATE TABLE books (isbn VARCHAR(18) not null PRIMARY KEY,
      author VARCHAR(30), story LONG VARCHAR, year INTEGER)"

この DB2 コマンドによって、books という名前の表が作成されます。 この表には、authorstoryisbn 番号、 および本が出版された year に関する列が含まれます。

フルテキスト索引を作成する
db2text "CREATE INDEX db2ext.myTextIndex FOR TEXT ON books (story)
        CONNECT TO sample"

このコマンドで、列 story のフルテキスト索引が作成されます。 テキスト索引の名前は db2ext.myTextIndex です。

サンプル・データをロードする
db2 "INSERT INTO books VALUES ('0-13-086755-1','John', 'A man was
     running down the street.',2001)"
db2 "INSERT INTO books VALUES ('0-13-086755-2','Mike', 'The cat hunts
     some mice.', 2000)"
db2 "INSERT INTO books VALUES ('0-13-086755-3','Peter', 'Some men 
     were standing beside the table.',1999)"

これらのコマンドで、3 冊の本の isbnauthorstory、 および publishing year が表にロードされます。

テキスト索引を同期させる
sample 表のデータでテキスト索引を更新するには、 以下のコマンドを使用します。

db2text "UPDATE INDEX db2ext.myTextIndex FOR TEXT CONNECT TO sample"

テキスト索引で検索する
テキスト索引を検索するには、 以下の CONTAINS スカラー検索関数を使用します。

db2 "SELECT author, story FROM books WHERE CONTAINS
    (story, '¥"cat¥"') = 1 AND YEAR >= 2000"

使用するオペレーティング・システム・シェルによっては、 テキスト検索句を囲む二重引用符の前に、 別のエスケープ文字が必要な場合があります。 上記の例ではエスケープ文字として「¥」を使用しています。

この照会では、2000 年以降の、cat という語に関するすべての本が検索されます。 照会によって、次の結果表が戻されます。

AUTHOR    STORY
Mike      The cat hunts some mice.

他に、SCORE および NUMBEROFMATCHES 関数がサポートされています。 SCORE は、 見つかった文書を検索引き数がどの程度正確に表現しているかを示す標識を戻します。 NUMBEROFMATCHES は、 結果の文書内にある照会語のマッチ回数を戻します。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]