50.2 QUERY_SEARCH_ENGINEファンクション

このファンクションは、単純なエンド・ユーザー検索問合せを、問合せ緩和を組み込んだスマート検索の対応するOracle Text構文に変換します。

問合せの最も制限の多いバージョン(完全一致検索など)を最初に実行し、より制限の少ない問合せ(ステム検索やファジー・マッチなど)を使用して問合せを徐々に緩和します。

結果の数を最大化しながら、最も正確で関連性の高い一致のスコアが高くなります。

構文

APEX_SEARCH.QUERY_SEARCH_ENGINE (
    p_search_expression IN VARCHAR2 )
    RETURN CLOB;

パラメータ

パラメータ 説明
p_search_expression Oracle Text構文に変換するエンド・ユーザー検索問合せ。

戻り値

このファンクションは、指定された検索式に基づいて生成されたOracle Text問合せを戻します。

select query_search_engine('red shorts') from dual;

TEXT_QUERY
----------------------------------------
<query>
   <textquery>
   <progression>
   <seq>{red} {shorts}</seq>
   <seq>${red} ${shorts}</seq>
   <seq>FUZZY({red},40,1000,W) FUZZY({shorts},40,1000,W)</seq>
   <seq>{red} AND {shorts}</seq>
   <seq>${red} AND ${shorts}</seq>
   <seq>FUZZY({red},40,1000,W) AND FUZZY({shorts},40,1000,W)</seq>
   <seq>{red} ACCUM {shorts}</seq>
   <seq>${red} ACCUM ${shorts}</seq>
   <seq>FUZZY({red},40,1000,W) ACCUM FUZZY({shorts},40,1000,W)</seq>
   </progression>
   </textquery>
</query>