他のバージョンの文書 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

14.6. 演算子クラスの作成

これまでで、必要な演算子およびサポートルーチンの説明は一通り終わりました。最後に、演算子クラスを作成する方法を紹介します。

CREATE OPERATOR CLASS complex_abs_ops
    DEFAULT FOR TYPE complex USING btree AS
        OPERATOR        1       < ,
        OPERATOR        2       <= ,
        OPERATOR        3       = ,
        OPERATOR        4       >= ,
        OPERATOR        5       > ,
        FUNCTION        1       complex_abs_cmp(complex, complex);

これで終りです!これでcomplex 列のbtree インデックスを作って使用することが可能になったはずです。

以下のように、演算子エントリをより冗長に記述することができます。

        OPERATOR        1       < (complex, complex) ,

しかし、演算子が、演算子クラスの定義と同一のデータ型である場合、このような記述をする必要はありません。

上記の例は、ユーザがこの新しい演算子クラスをcomplex データ型のデフォルトの B-tree演算子クラスにしようとしていると仮定しています。 このようにしない場合、DEFAULT という記述を除外してください。