4 CREATE TABLE reporter.materialized_simple_record AS SELECT * FROM reporter.simple_record WHERE 1=0;
6 INSERT INTO reporter.materialized_simple_record
7 (id,fingerprint,quality,tcn_source,tcn_value,title,author,publisher,pubdate,isbn,issn)
8 SELECT DISTINCT ON (id) * FROM reporter.super_simple_record;
10 ALTER TABLE reporter.materialized_simple_record ADD PRIMARY KEY (id);
12 CREATE OR REPLACE FUNCTION reporter.simple_rec_sync () RETURNS TRIGGER AS $$
14 IF TG_OP IN ('UPDATE','DELETE') THEN
15 DELETE FROM reporter.materialized_simple_record WHERE id = OLD.record;
18 IF TG_OP IN ('INSERT','UPDATE') AND NOT NEW.deleted THEN
19 INSERT INTO reporter.materialized_simple_record SELECT * FROM reporter.simple_record WHERE id = NEW.record;
25 CREATE TRIGGER zzz_update_materialized_simple_record_tgr
26 AFTER INSERT OR UPDATE OR DELETE ON metabib.full_rec
27 FOR EACH ROW EXECUTE PROCEDURE reporter.simple_rec_sync();