PostgreSQL 9.3.0 Documentation
Prev | Up |  | Next

# REFRESH MATERIALIZED VIEW

## Name

REFRESH MATERIALIZED VIEW -- replace the contents of a materialized view

## Synopsis

    REFRESH MATERIALIZED VIEW name
        [ WITH [ NO ] DATA ]

## Description

`REFRESH MATERIALIZED VIEW` completely replaces the contents of a materialized view. The old contents are discarded. If `WITH DATA` is specified (or defaults) the backing query is executed to provide the new data, and the materialized view is left in a scannable state. If `WITH NO DATA` is specified no new data is generated and the materialized view is left in an unscannable state.

## Parameters

`name`

  The name (optionally schema-qualified) of the materialized view to refresh.

## Notes

While the default index for future CLUSTER operations is retained, `REFRESH MATERIALIZED VIEW` does not order the generated rows based on this property. If you want the data to be ordered upon generation, you must use an `ORDER BY` clause in the backing query.

## Examples

This command will replace the contents of the materialized view called `order_summary` using the query from the materialized view's definition, and leave it in a scannable state:

    REFRESH MATERIALIZED VIEW order_summary;

This command will free storage associated with the materialized view `annual_statistics_basis` and leave it in an unscannable state:

    REFRESH MATERIALIZED VIEW annual_statistics_basis WITH NO DATA;

## Compatibility

`REFRESH MATERIALIZED VIEW` is a PostgreSQL extension.

## See Also

CREATE MATERIALIZED VIEW, ALTER MATERIALIZED VIEW, DROP MATERIALIZED VIEW

Prev | Home | Next
REASSIGN OWNED | Up | REINDEX