ALTER INDEX modifies the definition of an existing index.
There are several sub-forms:
If the specified index does not exist, a notice instead of an error is sent.
Changes only the name of the index. There is no effect on the stored data.
Change one or more index-method-specific storage parameters. Note that the index contents will not be modified immediately by this command. You might need to rebuild the index with REINDEX to get the desired effects depending on parameters.
Reset one or more index-method-specific storage parameters to the default value. Similar to the SET statement, REINDEX may be used to completely update the index.
Sets the index on a table or index partition to be unavailable.
1 2 | ALTER INDEX [ IF EXISTS ] index_name RENAME TO new_name; |
1 2 | ALTER INDEX [ IF EXISTS ] index_name SET ( {storage_parameter = value} [, ... ] ); |
1 2 | ALTER INDEX [ IF EXISTS ] index_name RESET ( storage_parameter [, ... ] ) ; |
1 2 | ALTER INDEX [ IF EXISTS ] index_name [ MODIFY PARTITION index_partition_name ] UNUSABLE; |
The syntax cannot be used for column-store tables.
1 2 | ALTER INDEX index_name REBUILD [ PARTITION index_partition_name ]; |
1 2 | ALTER INDEX [ IF EXISTS ] index_name RENAME PARTITION index_partition_name TO new_index_partition_name; |
PG_OBJECT does not support the record of the syntax when the last modification time of the index is recorded.
Specifies the index name to be modified.
Specifies the new name for the index.
Value range: a string that must comply with the identifier naming rules.
Specifies the name of an index-method-specific parameter.
Specifies the new value for an index-method-specific storage parameter. This might be a number or a word depending on the parameter.
Specifies the new name of the index partition.
Specifies the name of the index partition.
Rename the ds_ship_mode_t1_index1 index to ds_ship_mode_t1_index5.
1 | ALTER INDEX tpcds.ds_ship_mode_t1_index1 RENAME TO ds_ship_mode_t1_index5; |
Set the ds_ship_mode_t1_index2 index as unusable.
1 | ALTER INDEX tpcds.ds_ship_mode_t1_index2 UNUSABLE; |
Rebuild the ds_ship_mode_t1_index2 index.
1 | ALTER INDEX tpcds.ds_ship_mode_t1_index2 REBUILD; |
Rename a partitioned table index.
1 | ALTER INDEX tpcds.ds_customer_address_p1_index2 RENAME PARTITION CA_ADDRESS_SK_index1 TO CA_ADDRESS_SK_index4; |