特定のUDTの2つの値を比較するときに、システムはそれぞれの値に対してMAPルーチンを呼び出し、MAPルーチン呼び出しからの戻り値を比較します。戻り値はBLOBまたはCLOBを除くあらゆる事前定義データ型を持つように指定することができ、UDTデータ型の比較の結果は、返された事前定義型の値を比較した結果と同じになります。
次の表記は、比較される値の指定に使用される各種変数と、その比較に使用される外部ルーチンを表わします。
- xとyをそれぞれ、比較されるUDTの値を表わすものとします。
- 次の表は、UDFおよびメソッドを表わすために使用される表記を示しています。
MAPルーチンの外部ルーチンの種類 表現に使用される表記 ユーザー定義メソッド M() ユーザー定義関数 F
次の表は同一のUDTの異なる値同士の関係と、これらの値に対して操作を行なうために使用されるユーザー定義メソッドの例を示しています。
TRUEとして評価されるメソッド マッピング | x comparison_operator yの結果 |
---|---|
x.M() = Y.M() | x = Y |
x.M() < Y.M() | x < Y |
x.M() <> Y.M() | x <> Y |
x.M() > Y.M() | x > Y |
x.M() ≤ Y.M() | x ≤ Y |
x.M() ≥ Y.M() | x ≥ Y |
次の表は同一のUDTの異なる値同士の関係と、これらの値に対して操作を行なうために使用されるユーザー定義関数の例を示しています。
TRUEとして評価されるUDFマッピング | x comparison_operator yの結果 |
---|---|
F(x) = F(y) | x = y |
F(x) < F(y) | x < y |
F(x) <> F(y) | x <> y |
F(x) > F(y) | x > y |
F(x) ≤ F(y) | x ≤ y |
F(x) ≥ F(y) | x ≥ y |