同義字清單是由一個 字根,以及一個以上意義和字根類似的字組組成。 當您不是很確切知道您要搜尋的文字內容時,同義字清單極為有用。
例如,假設您要搜尋 videos 表格的 description 直欄。 您知道 description 直欄中包含對影像的參照, 說明如何使用多媒體文件編輯器,但是您不確定其中是否一致地將編輯器說明為 多媒體 document 編輯器,或是說明為多媒體 text 編輯器。
若要執行此項搜尋,可以針對 document 及 text 字組使用同義字清單項目。
SELECT id, description from videos
WHERE etx_contains(description,
Row('document', 'MATCH_SYNONYM = syn_list'));
SELECT id, description from videos
WHERE etx_contains(description,
Row('document', 'MATCH_SYNONYM = syn_list2'));
quick speedy fast
monitor terminal CRT screen
在此範例中,quick 和 monitor 都是字根。字組必須呈現作為字根,才可以使用該字組的同義字。 這表示如果您要搜尋 speedy 的同義字, 就必須將 speedy 列出作為字根;而不能只是將其列出作為同義字清單中 quick 的一個同義字。
$INFORMIXDIR/extend/ETX.version/wordlist/etx_thesaurus.txt
其中 version 是指您的電腦上所安裝的 DataBlade 模組的現行版本。如果查詢參照 etx_thesaurus 同義字清單,但是該清單不存在,則 Informix Excalibur Text Search DataBlade 模組會傳回錯誤。
例如,假設您執行一項文字搜尋,並指定 PATTERN_ALL 及 MATCH_SYNONYM 調整參數,同時在指定的同義字清單中包含的字根 abandon 具有一個同義字:surrender。 搜尋會傳回包含字組 abanden(與字根 abandon 型樣相符)的文件,但是不會傳回包含字組 surender(與同義字 surrender 型樣相符)的文件。