sql >> データベース >  >> RDS >> PostgreSQL

uuidの配列のPostgreSQLGINインデックス

    注: これは現在標準のPostgreSQLの一部であるため、この回答は廃止されました。tbussmannの他の回答(賛成する必要があります)を参照してください。

    元の回答:

    これは、次の演算子クラスを使用して実行できます。

    CREATE OPERATOR CLASS _uuid_ops DEFAULT 
      FOR TYPE _uuid USING gin AS 
      OPERATOR 1 &&(anyarray, anyarray), 
      OPERATOR 2 @>(anyarray, anyarray), 
      OPERATOR 3 <@(anyarray, anyarray), 
      OPERATOR 4 =(anyarray, anyarray), 
      FUNCTION 1 uuid_cmp(uuid, uuid), 
      FUNCTION 2 ginarrayextract(anyarray, internal, internal), 
      FUNCTION 3 ginqueryarrayextract(anyarray, internal, smallint, internal, internal, internal, internal), 
      FUNCTION 4 ginarrayconsistent(internal, smallint, anyarray, integer, internal, internal, internal, internal), 
      STORAGE uuid;
    

    これ のクレジット 私を正しい方向に向けてくれて。

    関連するドキュメントは、インデックスへの拡張機能のインターフェース にあります。 特に、GINのオペレーター戦略と関数番号がそこに記述されています。



    1. SETフィールドから値を削除する最良の方法は?

    2. 異なるオラクルの注文

    3. OracleからDerbyへ-ConnectByおよびStartWithEquivalent in Derby

    4. プロトコルパケットの順序が正しくありません