Project

General

Profile

« Previous | Next » 

Revision 6867

schemas/vegbien.sql: Added materialized view owner_count, generated from owner_count_view

View differences:

vegbien.sql
973 973

  
974 974

  
975 975
--
976
-- Name: sync_owner_count_to_view(); Type: FUNCTION; Schema: public; Owner: -
977
--
978

  
979
CREATE FUNCTION sync_owner_count_to_view() RETURNS void
980
    LANGUAGE sql
981
    AS $$
982
DROP TABLE IF EXISTS owner_count;
983
CREATE TABLE owner_count AS SELECT * FROM owner_count_view LIMIT 0;
984

  
985
GRANT SELECT ON TABLE owner_count TO bien_read;
986
GRANT SELECT ON TABLE owner_count TO public_;
987
GRANT SELECT ON TABLE owner_count_view TO bien_read;
988
GRANT SELECT ON TABLE owner_count_view TO public_;
989

  
990
ALTER TABLE owner_count ADD PRIMARY KEY (owner);
991
$$;
992

  
993

  
994
--
976 995
-- Name: sync_provider_count_to_view(); Type: FUNCTION; Schema: public; Owner: -
977 996
--
978 997

  
......
3332 3351

  
3333 3352

  
3334 3353
--
3354
-- Name: owner_count; Type: TABLE; Schema: public; Owner: -; Tablespace: 
3355
--
3356

  
3357
CREATE TABLE owner_count (
3358
    owner text NOT NULL,
3359
    count bigint
3360
);
3361

  
3362

  
3363
--
3364
-- Name: sourcename; Type: TABLE; Schema: public; Owner: -; Tablespace: 
3365
--
3366

  
3367
CREATE TABLE sourcename (
3368
    sourcelist_id integer NOT NULL,
3369
    name text NOT NULL,
3370
    matched_source_id integer
3371
);
3372

  
3373

  
3374
--
3375
-- Name: owner_count_view; Type: VIEW; Schema: public; Owner: -
3376
--
3377

  
3378
CREATE VIEW owner_count_view AS
3379
    SELECT sourcename.name AS owner, count(*) AS count FROM ((sourcename JOIN sourcelist USING (sourcelist_id)) JOIN specimenreplicate ON ((specimenreplicate.institution_id = sourcelist.sourcelist_id))) GROUP BY sourcename.name;
3380

  
3381

  
3382
--
3335 3383
-- Name: party_party_id_seq; Type: SEQUENCE; Schema: public; Owner: -
3336 3384
--
3337 3385

  
......
3667 3715

  
3668 3716

  
3669 3717
--
3670
-- Name: sourcename; Type: TABLE; Schema: public; Owner: -; Tablespace: 
3671
--
3672

  
3673
CREATE TABLE sourcename (
3674
    sourcelist_id integer NOT NULL,
3675
    name text NOT NULL,
3676
    matched_source_id integer
3677
);
3678

  
3679

  
3680
--
3681 3718
-- Name: provider_view; Type: VIEW; Schema: public; Owner: -
3682 3719
--
3683 3720

  
......
5206 5243

  
5207 5244

  
5208 5245
--
5246
-- Data for Name: owner_count; Type: TABLE DATA; Schema: public; Owner: -
5247
--
5248

  
5249

  
5250

  
5251
--
5209 5252
-- Data for Name: party; Type: TABLE DATA; Schema: public; Owner: -
5210 5253
--
5211 5254

  
......
5700 5743

  
5701 5744

  
5702 5745
--
5746
-- Name: owner_count_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
5747
--
5748

  
5749
ALTER TABLE ONLY owner_count
5750
    ADD CONSTRAINT owner_count_pkey PRIMARY KEY (owner);
5751

  
5752

  
5753
--
5703 5754
-- Name: party_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
5704 5755
--
5705 5756

  
......
8162 8213

  
8163 8214

  
8164 8215
--
8216
-- Name: owner_count; Type: ACL; Schema: public; Owner: -
8217
--
8218

  
8219
REVOKE ALL ON TABLE owner_count FROM PUBLIC;
8220
REVOKE ALL ON TABLE owner_count FROM bien;
8221
GRANT ALL ON TABLE owner_count TO bien;
8222
GRANT SELECT ON TABLE owner_count TO bien_read;
8223
GRANT SELECT ON TABLE owner_count TO public_;
8224

  
8225

  
8226
--
8227
-- Name: sourcename; Type: ACL; Schema: public; Owner: -
8228
--
8229

  
8230
REVOKE ALL ON TABLE sourcename FROM PUBLIC;
8231
REVOKE ALL ON TABLE sourcename FROM bien;
8232
GRANT ALL ON TABLE sourcename TO bien;
8233
GRANT SELECT ON TABLE sourcename TO bien_read;
8234
GRANT SELECT ON TABLE sourcename TO public_;
8235

  
8236

  
8237
--
8238
-- Name: owner_count_view; Type: ACL; Schema: public; Owner: -
8239
--
8240

  
8241
REVOKE ALL ON TABLE owner_count_view FROM PUBLIC;
8242
REVOKE ALL ON TABLE owner_count_view FROM bien;
8243
GRANT ALL ON TABLE owner_count_view TO bien;
8244
GRANT SELECT ON TABLE owner_count_view TO bien_read;
8245
GRANT SELECT ON TABLE owner_count_view TO public_;
8246

  
8247

  
8248
--
8165 8249
-- Name: partymember; Type: ACL; Schema: public; Owner: -
8166 8250
--
8167 8251

  
......
8244 8328

  
8245 8329

  
8246 8330
--
8247
-- Name: sourcename; Type: ACL; Schema: public; Owner: -
8248
--
8249

  
8250
REVOKE ALL ON TABLE sourcename FROM PUBLIC;
8251
REVOKE ALL ON TABLE sourcename FROM bien;
8252
GRANT ALL ON TABLE sourcename TO bien;
8253
GRANT SELECT ON TABLE sourcename TO bien_read;
8254
GRANT SELECT ON TABLE sourcename TO public_;
8255

  
8256

  
8257
--
8258 8331
-- Name: provider_view; Type: ACL; Schema: public; Owner: -
8259 8332
--
8260 8333

  

Also available in: Unified diff