Home Explore Blog CI



postgresql

62th chunk of `doc/src/sgml/catalogs.sgml`
32864a0c4e6361dbac3a0fbee56a329916b9bbbd7f070a770000000100000faf
 role="column_definition">
       <structfield>opcmethod</structfield> <type>oid</type>
       (references <link linkend="catalog-pg-am"><structname>pg_am</structname></link>.<structfield>oid</structfield>)
      </para>
      <para>
       Index access method operator class is for
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>opcname</structfield> <type>name</type>
      </para>
      <para>
       Name of this operator class
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>opcnamespace</structfield> <type>oid</type>
       (references <link linkend="catalog-pg-namespace"><structname>pg_namespace</structname></link>.<structfield>oid</structfield>)
      </para>
      <para>
       Namespace of this operator class
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>opcowner</structfield> <type>oid</type>
       (references <link linkend="catalog-pg-authid"><structname>pg_authid</structname></link>.<structfield>oid</structfield>)
      </para>
      <para>
       Owner of the operator class
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>opcfamily</structfield> <type>oid</type>
       (references <link linkend="catalog-pg-opfamily"><structname>pg_opfamily</structname></link>.<structfield>oid</structfield>)
      </para>
      <para>
       Operator family containing the operator class
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>opcintype</structfield> <type>oid</type>
       (references <link linkend="catalog-pg-type"><structname>pg_type</structname></link>.<structfield>oid</structfield>)
      </para>
      <para>
       Data type that the operator class indexes
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>opcdefault</structfield> <type>bool</type>
      </para>
      <para>
       True if this operator class is the default for <structfield>opcintype</structfield>
      </para></entry>
     </row>

     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       <structfield>opckeytype</structfield> <type>oid</type>
       (references <link linkend="catalog-pg-type"><structname>pg_type</structname></link>.<structfield>oid</structfield>)
      </para>
      <para>
       Type of data stored in index, or zero if same as <structfield>opcintype</structfield>
      </para></entry>
     </row>
    </tbody>
   </tgroup>
  </table>

  <para>
   An operator class's <structfield>opcmethod</structfield> must match the
   <structfield>opfmethod</structfield> of its containing operator family.
   Also, there must be no more than one <structname>pg_opclass</structname>
   row having <structfield>opcdefault</structfield> true for any given combination of
   <structfield>opcmethod</structfield> and <structfield>opcintype</structfield>.
  </para>

 </sect1>


 <sect1 id="catalog-pg-operator">
  <title><structname>pg_operator</structname></title>

  <indexterm zone="catalog-pg-operator">
   <primary>pg_operator</primary>
  </indexterm>

  <para>
   The catalog <structname>pg_operator</structname> stores information about operators.
   See <xref linkend="sql-createoperator"/>
   and <xref linkend="xoper"/> for more information.
  </para>

  <table>
   <title><structname>pg_operator</structname> Columns</title>
   <tgroup cols="1">
    <thead>
     <row>
      <entry role="catalog_table_entry"><para role="column_definition">
       Column Type
      </para>
      <para>
       Description
      </para></entry>
     </row>
    </thead>

    <tbody>
     <row>
      <entry role="catalog_table_entry"><para

Title: pg_opclass Columns (Continued) and Introduction to pg_operator
Summary
Continues describing the columns of the `pg_opclass` catalog, including `opcmethod`, `opcname`, `opcnamespace`, `opcowner`, `opcfamily`, `opcintype`, `opcdefault`, and `opckeytype`. It specifies constraints on `opcmethod` and `opcdefault`. Then, the section introduces the `pg_operator` catalog, which stores information about operators, referencing documentation for `CREATE OPERATOR` and operator overloading. The structure of the `pg_operator` table is outlined, beginning with column definitions and descriptions.