DROP MATERIALIZED VIEW LOG ON ; DROP MATERIALIZED VIEW LOG ON EX_DAY ; DROP MATERIALIZED VIEW ; DROP TABLE PURGE; CREATE TABLE ( VPERIOD VARCHAR2(8) NOT NULL, VKEY1 VARCHAR2(60) NOT NULL, VKEY2 VARCHAR2(60) NOT NULL, VKEY3 VARCHAR2(60) NOT NULL, VKEY4 VARCHAR2(60) NOT NULL, VKEY5 VARCHAR2(60) NOT NULL, VKEY6 VARCHAR2(60) NOT NULL, VKEY7 VARCHAR2(60) NOT NULL, VKEY8 VARCHAR2(60) NOT NULL, VKEY9 VARCHAR2(60) NOT NULL, VKEY10 VARCHAR2(60) NOT NULL, VKEY11 VARCHAR2(60) NOT NULL, VKEY12 VARCHAR2(60) NOT NULL, VKEY13 VARCHAR2(60) NOT NULL, VKEY14 VARCHAR2(60) NOT NULL, VKEY15 VARCHAR2(60) NOT NULL, VKEY16 VARCHAR2(60) NOT NULL, VKEY17 VARCHAR2(60) NOT NULL, VKEY18 VARCHAR2(60) NOT NULL, VKEY19 VARCHAR2(60) NOT NULL, VKEY20 VARCHAR2(60) NOT NULL, VKEY21 VARCHAR2(60) NOT NULL, VKEY22 VARCHAR2(60) NOT NULL, VKEY23 VARCHAR2(60) NOT NULL, VKEY24 VARCHAR2(60) NOT NULL, VKEY25 VARCHAR2(60) NOT NULL, VKEY26 VARCHAR2(60) NOT NULL, VKEY27 VARCHAR2(60) NOT NULL, VKEY28 VARCHAR2(60) NOT NULL, VKEY29 VARCHAR2(60) NOT NULL, VKEY30 VARCHAR2(60) NOT NULL, VD1 NUMBER, VD2 NUMBER, VD3 NUMBER, VD4 NUMBER, VD5 NUMBER, VD6 NUMBER, VD7 NUMBER, VD8 NUMBER, VD9 NUMBER, VD10 NUMBER, VD11 NUMBER, VD12 NUMBER, VD13 NUMBER, VD14 NUMBER, VD15 NUMBER, VD16 NUMBER, VD17 NUMBER, VD18 NUMBER, VD19 NUMBER, VD20 NUMBER, VD21 NUMBER, VD22 NUMBER, VD23 NUMBER, VD24 NUMBER, VD25 NUMBER, VD26 NUMBER, VD27 NUMBER, VD28 NUMBER, VD29 NUMBER, VD30 NUMBER ) PARTITION BY RANGE(VPERIOD) ( PARTITION VALUES LESS THAN (''), PARTITION VALUES LESS THAN ('MAXVALUE') ) NOLOGGING ; INSERT INTO SELECT B. "VPERIOD", A.KEY1 "VKEY1" , A.KEY2 "VKEY2" , A.KEY3 "VKEY3" , A.KEY4 "VKEY4" , A.KEY5 "VKEY5" , A.KEY6 "VKEY6" , A.KEY7 "VKEY7" , A.KEY8 "VKEY8" , A.KEY9 "VKEY9" , A.KEY10 "VKEY10" , A.KEY11 "VKEY11" , A.KEY12 "VKEY12" , A.KEY13 "VKEY13" , A.KEY14 "VKEY14" , A.KEY15 "VKEY15" , A.KEY16 "VKEY16" , A.KEY17 "VKEY17" , A.KEY18 "VKEY18" , A.KEY19 "VKEY19" , A.KEY20 "VKEY20" , A.KEY21 "VKEY21" , A.KEY22 "VKEY22" , A.KEY23 "VKEY23" , A.KEY24 "VKEY24" , A.KEY25 "VKEY25" , A.KEY26 "VKEY26" , A.KEY27 "VKEY27" , A.KEY28 "VKEY28" , A.KEY29 "VKEY29" , A.KEY30 "VKEY30", SUM(A.D1) "VD1" , SUM(A.D2) "VD2" , SUM(A.D3) "VD3" , SUM(A.D4) "VD4" , SUM(A.D5) "VD5" , SUM(A.D6) "VD6" , SUM(A.D7) "VD7" , SUM(A.D8) "VD8" , SUM(A.D9) "VD9" , SUM(A.D10) "VD10" , SUM(A.D11) "VD11" , SUM(A.D12) "VD12" , SUM(A.D13) "VD13" , SUM(A.D14) "VD14" , SUM(A.D15) "VD15" , SUM(A.D16) "VD16" , SUM(A.D17) "VD17" , SUM(A.D18) "VD18" , SUM(A.D19) "VD19" , SUM(A.D20) "VD20" , SUM(A.D21) "VD21" , SUM(A.D22) "VD22" , SUM(A.D23) "VD23" , SUM(A.D24) "VD24" , SUM(A.D25) "VD25" , SUM(A.D26) "VD26" , SUM(A.D27) "VD27" , SUM(A.D28) "VD28" , SUM(A.D29) "VD29" , SUM(A.D30) "VD30" FROM A, EX_DAY B WHERE A. = B.EX_DATE GROUP BY B. , A.KEY1 , A.KEY2 , A.KEY3 , A.KEY4 , A.KEY5 , A.KEY6 , A.KEY7 , A.KEY8 , A.KEY9 , A.KEY10 , A.KEY11 , A.KEY12 , A.KEY13 , A.KEY14 , A.KEY15 , A.KEY16 , A.KEY17 , A.KEY18 , A.KEY19 , A.KEY20 , A.KEY21 , A.KEY22 , A.KEY23 , A.KEY24 , A.KEY25 , A.KEY26 , A.KEY27 , A.KEY28 , A.KEY29 , A.KEY30 ; ALTER TABLE ADD PRIMARY KEY ( VPERIOD, VKEY1, VKEY2, VKEY3, VKEY4, VKEY5, VKEY6, VKEY7, VKEY8, VKEY9, VKEY10, VKEY11, VKEY12, VKEY13, VKEY14, VKEY15, VKEY16, VKEY17, VKEY18, VKEY19, VKEY20, VKEY21, VKEY22, VKEY23, VKEY24, VKEY25, VKEY26, VKEY27, VKEY28, VKEY29, VKEY30 ) NOLOGGING ; CREATE INDEX IDX__ ON ( VPERIOD, VKEY ) NOLOGGING ; COMMIT; EXIT