September 26, 2024: PostgreSQL 17 Released!
Supported Versions: Current (17) / 16 / 15 / 14 / 13 / 12
Development Versions: devel
Unsupported versions: 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
This documentation is for an unsupported version of PostgreSQL.
You may want to view the same page for the current version, or one of the other supported versions listed above instead.

47.3. pg_am

The catalog pg_am stores information about index access methods. There is one row for each index access method supported by the system. The contents of this catalog are discussed in detail in Chapter 54.

Table 47-3. pg_am Columns

Name Type References Description
oid oid   Row identifier (hidden attribute; must be explicitly selected)
amname name   Name of the access method
amstrategies int2   Number of operator strategies for this access method, or zero if access method does not have a fixed set of operator strategies
amsupport int2   Number of support routines for this access method
amcanorder bool   Does the access method support ordered scans sorted by the indexed column's value?
amcanorderbyop bool   Does the access method support ordered scans sorted by the result of an operator on the indexed column?
amcanbackward bool   Does the access method support backward scanning?
amcanunique bool   Does the access method support unique indexes?
amcanmulticol bool   Does the access method support multicolumn indexes?
amoptionalkey bool   Does the access method support a scan without any constraint for the first index column?
amsearcharray bool   Does the access method support ScalarArrayOpExpr searches?
amsearchnulls bool   Does the access method support IS NULL/NOT NULL searches?
amstorage bool   Can index storage data type differ from column data type?
amclusterable bool   Can an index of this type be clustered on?
ampredlocks bool   Does an index of this type manage fine-grained predicate locks?
amkeytype oid pg_type.oid Type of data stored in index, or zero if not a fixed type
aminsert regproc pg_proc.oid "Insert this tuple" function
ambeginscan regproc pg_proc.oid "Prepare for index scan" function
amgettuple regproc pg_proc.oid "Next valid tuple" function, or zero if none
amgetbitmap regproc pg_proc.oid "Fetch all valid tuples" function, or zero if none
amrescan regproc pg_proc.oid "(Re)start index scan" function
amendscan regproc pg_proc.oid "Clean up after index scan" function
ammarkpos regproc pg_proc.oid "Mark current scan position" function
amrestrpos regproc pg_proc.oid "Restore marked scan position" function
ambuild regproc pg_proc.oid "Build new index" function
ambuildempty regproc pg_proc.oid "Build empty index" function
ambulkdelete regproc pg_proc.oid Bulk-delete function
amvacuumcleanup regproc pg_proc.oid Post-VACUUM cleanup function
amcanreturn regproc pg_proc.oid Function to check whether index supports index-only scans, or zero if none
amcostestimate regproc pg_proc.oid Function to estimate cost of an index scan
amoptions regproc pg_proc.oid Function to parse and validate reloptions for an index