PG_AM
PG_AM records information about index access methods. There is one row for each index access method supported by the system.
| Name | Type | Reference | Description |
|---|---|---|---|
| oid | oid | - | Row identifier (hidden attribute; must be explicitly selected) |
| amname | name | - | Name of the access method |
| amstrategies | smallint | - | Number of operator strategies for this access method, or zero if access method does not have a fixed set of operator strategies |
| amsupport | smallint | - | Number of support routines for this access method |
| amcanorder | Boolean | - | Whether the access method supports ordered scans sorted by the indexed column's value |
| amcanorderbyop | Boolean | - | Whether the access method supports ordered scans sorted by the result of an operator on the indexed column |
| amcanbackward | Boolean | - | Whether the access method supports backward scanning |
| amcanunique | Boolean | - | Whether the access method supports unique indexes |
| amcanmulticol | Boolean | - | Whether the access method supports multi-column indexes |
| amoptionalkey | Boolean | - | Whether the access method supports a scan without any constraint for the first index column |
| amsearcharray | Boolean | - | Whether the access method supports ScalarArrayOpExpr searches |
| amsearchnulls | Boolean | - | Whether the access method supports IS NULL/NOT NULL searches |
| amstorage | Boolean | - | Whether an index storage data type can differ from a column data type |
| amclusterable | Boolean | - | Whether an index of this type can be clustered on |
| ampredlocks | Boolean | - | Whether an index of this type manages 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 |
| ammerge | regproc | PG_PROC.oid | "Merge multiple indexes" 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 |
Last Article: PG_AGGREGATE
Next Article: PG_AMOP
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.