today:
23,589
yesterday:
36,697
Total:
9,614,822

Oracle APEX SQL

SQL VERY IMPORTANT

admin 2018.06.26 05:29 Views : 1310

DECLARE
 SSID2 NUMBER;

BEGIN
delete from MISSIONARY_SUB;
delete from MISSIONARY_SUB2;
delete from MISSIONARY_YEAR;

insert into MISSIONARY_SUB
Select 
MISSIONARY_ID,SUPPORTER_ID,AMOUNT,to_number(to_char(CONTRIBUTION_DATE,'MM')) 
from CONTRIBUTION 
where UPPER(:P9_MISSIONARY_ID) = MISSIONARY_ID 
and :P9_YEAR = to_number(to_char(CONTRIBUTION_DATE,'YYYY'));

insert into MISSIONARY_SUB2
Select 
SSID,SUM(SAMOUNT),SDATE 
from MISSIONARY_SUB 
Group by SSID,SDATE;

INSERT INTO MISSIONARY_YEAR (SID)
SELECT DISTINCT SSID FROM MISSIONARY_SUB;

     FOR x IN (Select * from MISSIONARY_YEAR) LOOP

     UPDATE MISSIONARY_YEAR
     SET JAN = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 1)
     WHERE SID = x.SID;
     
     UPDATE MISSIONARY_YEAR
     SET FEB = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 2)
     WHERE SID = x.SID;

     UPDATE MISSIONARY_YEAR
     SET MAR = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 3)
     WHERE SID = x.SID;
     
     UPDATE MISSIONARY_YEAR
     SET APR = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 4)
     WHERE SID = x.SID;

     UPDATE MISSIONARY_YEAR
     SET MAY = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 5)
     WHERE SID = x.SID;
     
     UPDATE MISSIONARY_YEAR
     SET JUN = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 6)
     WHERE SID = x.SID;

     UPDATE MISSIONARY_YEAR
     SET JUL = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 7)
     WHERE SID = x.SID;
     
     UPDATE MISSIONARY_YEAR
     SET AUG = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 8)
     WHERE SID = x.SID;

     UPDATE MISSIONARY_YEAR
     SET SEP = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 9)
     WHERE SID = x.SID;
     
     UPDATE MISSIONARY_YEAR
     SET OCT = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 10)
     WHERE SID = x.SID;

     UPDATE MISSIONARY_YEAR
     SET NOV = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 11)
     WHERE SID = x.SID;
     
     UPDATE MISSIONARY_YEAR
     SET DEC = (SELECT SAMOUNT2 FROM MISSIONARY_SUB2 WHERE SSID2 = x.SID AND SDATE2 = 12)
     WHERE SID = x.SID;

     END LOOP;
COMMIT;
END;
No. Subject Author Date Views
92 SELECT last_name FROM admin 2018.12.12 1969
91 IMP admin 2018.10.08 1927
90 CREATE TABLE admin 2018.09.25 1652
89 Change Admin PASSWORD admin 2018.07.31 1353
» VERY IMPORTANT admin 2018.06.26 1310
87 IF/ELSE ... CASE WHEN admin 2018.06.25 943
86 MISSIONARY_SUB admin 2018.06.25 1206
85 eeeeee admin 2018.06.21 1173
84 TABLE PRINT admin 2018.06.18 1357
83 GP PRINT admin 2018.05.31 2257
82 How to convert DATE to NUMBER admin 2018.05.27 1341
81 DATE Compare admin 2018.05.22 1514
80 If you want to use EXISTS in a PL/SQL function returning BOOLEAN admin 2018.05.19 1241
79 use a validation function for an element in apex 5.0 admin 2018.05.19 1221
78 Validation to detect text in numeric field admin 2018.05.19 1387
77 All Data DELETE from Table admin 2018.05.10 1265
76 Process admin 2018.05.05 1231
75 Oracle SQL Developer: Online Migration 3.1 admin 2018.04.25 1441
74 How to Update Oracle XE admin 2018.04.25 1226
73 Oracle APEX 5.1.4 Installation admin 2018.04.17 1209