最近のアクセス:
Like 演算子

一致する文字列に従ってデータを選択します。

構文

CExp1 LIKE CExp2  [ when constraint ]

入力値の説明:

CExp1, CExp2 
   項目属性、変数、または引用符で囲んだ文字列。
When
   Where 節をいつ適用するかを指定します。
iSeries 環境の場合: CExp2 は、iSeries の検索パターンと同じように動作します。アスタリスク (*) とアンダースコア (_) のワイルドカード文字も使えます。アスタリスク (*) は、この文字の場所に任意の数 (0 個も含む) の任意の文字があることを表します。アンダースコア (_) は、この文字の場所に任意の 1 文字があることを表します。CExp1 を検索してから、Cexp2 を含むすべてのインスタンスを返します。
クライアント / サーバー環境の場合: この環境用に生成したプログラムが Like 演算子を実装する方法は、ほかのジェネレーターと異なります。
  • 統計情報を利用するので、指定できる検索条件の幅が広がっています。システムで作成されたインデックスを使用できるので、比較演算子 (>=) を使った検索よりもパフォーマンスが大幅によくなります。
  • さらに、ワイルドカード文字 (% と _ ) を使うこともできます。ただし、飛び飛びの場所に順番に入っている文字を見つけることはできません。指定した文字で始まる単語や、指定した文字が特定の位置にある単語を見つけることはできますが、指定した文字で終わる単語は見つけることができません。
  • DBMS で検索処理を最適化することができます。
  • SQL と互換性があります。SQL に慣れているユーザーはトレーニングなしで使用できます。SQL の Like 演算子と同じ要領で使うことができます。次の 2 つの文字をワイルドカードとして使用できます:
  • % (パーセント記号)。この記号の場所に、任意の数 (0 個を含む) の任意の文字があることを表します。
  • _ (アンダースコア)。この文字の場所に、任意の 1 文字があることを表します。注: この演算子では、大文字と小文字が区別されます。

顧客の情報を取り扱うシステムがあるとします。Web パネルの固定部分に &Search 変数が含まれており、ここでユーザーは検索する文字列を入力できます。パネルのスクロール可能な部分には、ユーザーが入力した文字列に似た (Like) 顧客の名前が表示されます。つまり、入力した文字列に一致するものを含む行だけをグリッドコントロールに表示するようにします。
対処法はいたって簡単です。Web パネルの条件に 1 行を追加 (ClientName Like &Search) し、パネルの固定部分で使用される変数に似た (Like) 該当するグリッドの項目属性を定義します。
次に、iSeries で文字列を入力して検索した結果を示します:
検索文字列 結果
JOHN 「JOHN」という文字列から始まる名前。
*SMITH 任意の場所に「SMITH」という文字列を含む名前。
JOHN*SMITH 「JOHN」という文字列から始まり、その後ろに「SMITH」という文字列がある名前。「JOHN」と「SMITH」の間に何文字入っていても関係ありません。
ANDERS_N 「ANDERS」という文字列の次に任意の 1 文字があり、その後ろに N が続く名前。ANDERSON や ANDERSEN という名前を見つけるのに便利です。
 
SQL 環境で検索した結果を示します:
検索文字列 結果
JOHN 「JOHN」という文字列で始まる名前。
%SMITH 任意の場所に「SMITH」という文字列を含む名前。
JOHN%SMITH 「JOHN」という文字列から始まり、その後ろに「SMITH」という文字列がある名前。「JOHN」と「SMITH」の間に何文字入っていても関係ありません。

適用範囲

オブジェクト    Procedure オブジェクトTransaction オブジェクトWeb Panel オブジェクトWork Panel オブジェクト
 









サブページ
Created: 14/09/18 03:48 by Admin Last update: 21/05/20 01:56 by Admin
カテゴリ
Powered by GXwiki 3.0