pg_ivm/sql/create_immv.sql
thoshiai 1d21409321
Add get_immv_def func (#23)
get_immv_def reconstructs the underlying SELECT command for a
IMMV. This is a decompiled reconstruction, not the original text
of the command.
2022-09-30 18:59:51 +09:00

19 lines
562 B
SQL

CREATE TABLE t (i int PRIMARY KEY);
INSERT INTO t SELECT generate_series(1, 100);
SELECT create_immv('mv', 'SELECT * FROM t');
SELECT create_immv(' mv2 ( x ) ', 'SELECT * FROM t WHERE i%2 = 0');
SELECT create_immv('mv3', 'WITH d AS (DELETE FROM t RETURNING NULL) SELECT * FROM t');
SELECT immvrelid, get_immv_def(immvrelid) FROM pg_ivm_immv ORDER BY 1;
DROP TABLE t;
DROP TABLE mv;
SELECT immvrelid, get_immv_def(immvrelid) FROM pg_ivm_immv ORDER BY 1;
DROP TABLE mv2;
SELECT immvrelid, get_immv_def(immvrelid) FROM pg_ivm_immv ORDER BY 1;
DROP TABLE t;