2014-09-09 10 views

risposta

11

Just:

SELECT pg_get_viewdef('myview'); 

da parte del cliente di vostra scelta.

ad es. in psql:

test=> CREATE MATERIALIZED VIEW fred AS SELECT x FROM generate_series(1,100) x; 
SELECT 100 
test=> \a\t 
Output format is unaligned. 
Showing only tuples. 
test=> SELECT pg_get_viewdef('fred'); 
SELECT x.x 
    FROM generate_series(1, 100) x(x); 

Questo funziona per le viste normali e materializzate.

In alternativa, come dice Richard, utilizzare's \d+, che chiama il numero pg_get_viewdef dietro le quinte.

0
SELECT * FROM "pg_catalog"."pg_matviews" 

Ecco come si trova un elenco di tutte le viste materializzate che è stato creato. Non avevo mai usato o visto lo schema pg_catalog prima e Navicat, la GUI che usavo, nascondeva "elementi di sistema" che includevano pg_catalog. Puoi disattivare la disattivazione del turno nelle preferenze dell'app.

+2

Oppure '\ d + viewname' da psql. Proprio '\ d nomeview' dà definizioni di colonne. –

Problemi correlati