]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/sql/Pg/upgrade/0022.schema.reporter-simple_record-materialized-view.sql
LP#1206936 - Fix wrong billing info in money.transaction_billing_summary
[Evergreen.git] / Open-ILS / src / sql / Pg / upgrade / 0022.schema.reporter-simple_record-materialized-view.sql
1 BEGIN;
2
3 INSERT INTO config.upgrade_log (version) VALUES ('0022'); --miker
4
5 -- Need to recreate this view with DISTINCT calls to ARRAY_ACCUM, thus avoiding duplicated ISBN and ISSN values
6 CREATE OR REPLACE VIEW reporter.old_super_simple_record AS
7 SELECT  r.id,
8         r.fingerprint,
9         r.quality,
10         r.tcn_source,
11         r.tcn_value,
12         title.value AS title,
13         FIRST(author.value) AS author,
14         publisher.value AS publisher,
15         SUBSTRING(pubdate.value FROM $$\d+$$) AS pubdate,
16         ARRAY_ACCUM( DISTINCT SUBSTRING(isbn.value FROM $$^\S+$$) ) AS isbn,
17         ARRAY_ACCUM( DISTINCT SUBSTRING(issn.value FROM $$^\S+$$) ) AS issn
18   FROM  biblio.record_entry r
19         LEFT JOIN metabib.full_rec title ON (r.id = title.record AND title.tag = '245' AND title.subfield = 'a')
20         LEFT JOIN metabib.full_rec author ON (r.id = author.record AND author.tag IN ('100','110','111') AND author.subfield = 'a')
21         LEFT JOIN metabib.full_rec publisher ON (r.id = publisher.record AND publisher.tag = '260' AND publisher.subfield = 'b')
22         LEFT JOIN metabib.full_rec pubdate ON (r.id = pubdate.record AND pubdate.tag = '260' AND pubdate.subfield = 'c')
23         LEFT JOIN metabib.full_rec isbn ON (r.id = isbn.record AND isbn.tag IN ('024', '020') AND isbn.subfield IN ('a','z'))
24         LEFT JOIN metabib.full_rec issn ON (r.id = issn.record AND issn.tag = '022' AND issn.subfield = 'a')
25   GROUP BY 1,2,3,4,5,6,8,9;
26
27 COMMIT;
28