我有四个表,其中包含登录详细信息和方案ID详细信息,每个字节的速率和每个表中每分钟的速率。表结构如下。
$inventory = Inventory::inventory('data_2016', 2);
我创建了一个程序,它将日期作为输入,并应根据字节数和登录分钟计算每日帐单金额。如果输入日期存在于表中,则应在ISBS_DAILY_BILLING_REP中更新计算值,否则必须将其作为新行插入。但我没有得到所需的输出。所以请帮我解决这个问题。我也附上了这个程序。
SQL> SELECT * FROM ISBS_SESSION_CONNECTION_DET;
CONNECTION_ID LOGIN_ID LOGIN_DTTM LOGOUT_DTTM BYTES_CNT D M
-------------- -------- ----------------------------------- ----------------------------------- ---------- - -
CON0000000001 USER1 01-SEP-08 10.00.00.000000 AM 01-SEP-08 12.15.00.000000 PM 100 N N
CON0000000002 USER1 01-SEP-08 02.15.00.000000 AM 01-SEP-08 02.55.00.000000 AM 500 N N
CON0000000003 USER1 10-SEP-08 02.15.00.000000 AM 10-SEP-08 04.15.00.000000 AM 1500 N N
CON0000000004 USER1 30-SEP-08 10.00.00.000000 AM 30-SEP-08 11.35.00.000000 AM 10 N N
CON0000000005 USER1 30-SEP-08 11.40.00.000000 AM 01-OCT-08 07.25.00.000000 AM 100 N N
CON0000000006 USER1 03-OCT-08 08.45.00.000000 AM 05-OCT-08 07.25.00.000000 AM 12000 N N
CON0000000007 USER1 16-SEP-08 09.15.00.000000 AM 17-SEP-08 09.15.00.000000 AM 1000 N N
CON0000000008 USER1 24-SEP-08 02.15.00.000000 AM 24-SEP-08 11.50.00.000000 PM 1500 N N
CON0000000009 USER2 01-SEP-08 10.00.00.000000 AM 01-SEP-08 12.15.00.000000 PM 100 N N
CON0000000010 USER2 01-SEP-08 02.15.00.000000 PM 01-SEP-08 02.55.00.000000 PM 500 N N
CON0000000011 USER2 10-SEP-08 02.15.00.000000 AM 10-SEP-08 04.15.00.000000 AM 1500 N N
CON0000000012 USER2 30-SEP-08 10.00.00.000000 PM 30-SEP-08 11.35.00.000000 PM 10 N N
CON0000000013 USER2 30-SEP-08 11.40.00.000000 PM 01-OCT-08 07.25.00.000000 AM 100 N N
CON0000000014 USER2 03-OCT-08 08.45.00.000000 AM 05-OCT-08 07.25.00.000000 AM 12000 N N
CON0000000015 USER2 16-SEP-08 09.15.00.000000 AM 17-SEP-08 09.15.00.000000 AM 1000 N N
CON0000000016 USER2 24-SEP-08 02.15.00.000000 AM 24-SEP-08 11.50.00.000000 PM 1500 N N
CON0000000017 USER3 01-SEP-08 10.00.00.000000 AM 01-SEP-08 12.15.00.000000 PM 100 N N
CON0000000018 USER3 01-SEP-08 02.15.00.000000 PM 01-SEP-08 02.55.00.000000 PM 500 N N
CON0000000019 USER3 10-SEP-08 02.15.00.000000 AM 10-SEP-08 04.15.00.000000 AM 1500 N N
CON0000000020 USER3 30-SEP-08 10.00.00.000000 PM 30-SEP-08 11.35.00.000000 PM 10 N N
CON0000000021 USER3 30-SEP-08 11.40.00.000000 PM 01-OCT-08 07.25.00.000000 AM 100 N N
CON0000000022 USER3 03-OCT-08 08.45.00.000000 AM 05-OCT-08 07.25.00.000000 AM 12000 N N
CON0000000023 USER3 16-SEP-08 09.15.00.000000 AM 17-SEP-08 09.15.00.000000 AM 1000 N N
CON0000000024 USER3 24-SEP-08 02.15.00.000000 AM 24-SEP-08 11.50.00.000000 PM 1500 N N
CON0000000025 USER4 01-SEP-08 10.00.00.000000 AM 01-SEP-08 12.15.00.000000 PM 100 N N
CON0000000026 USER4 01-SEP-08 02.15.00.000000 PM 01-SEP-08 02.55.00.000000 PM 500 N N
CON0000000027 USER4 01-SEP-08 02.15.00.000000 AM 01-SEP-08 04.15.00.000000 AM 1500 N N
CON0000000028 USER4 30-SEP-08 10.00.00.000000 PM 30-SEP-08 11.35.00.000000 PM 10 N N
CON0000000029 USER4 30-SEP-08 11.40.00.000000 PM 01-OCT-08 07.25.00.000000 AM 100 N N
CON0000000030 USER4 03-OCT-08 08.45.00.000000 AM 05-OCT-08 07.25.00.000000 AM 12000 N N
CON0000000031 USER4 16-SEP-08 09.15.00.000000 AM 17-SEP-08 09.15.00.000000 AM 1000 N N
CON0000000032 USER4 24-SEP-08 02.15.00.000000 AM 24-SEP-08 11.50.00.000000 PM 1500 N N
CON0000000033 USER1 24-SEP-07 02.15.00.000000 AM 24-SEP-07 05.15.00.000000 AM 122 N N
CON0000000034 USER1 25-SEP-07 02.15.00.000000 AM 26-SEP-07 02.15.00.000000 AM 544 N N
CON0000000035 USER2 25-SEP-07 02.15.00.000000 AM 26-SEP-07 02.15.00.000000 AM 355 N N
CON0000000036 USER3 24-SEP-07 02.15.00.000000 AM 24-SEP-07 05.15.00.000000 AM 100 N N
CON0000000037 USER3 25-SEP-07 02.15.00.000000 AM 26-SEP-07 02.15.00.000000 AM 10 N N
CON0000000038 USER3 25-DEC-07 02.15.00.000000 AM 25-DEC-07 06.15.00.000000 AM 1000 N N
SQL> SELECT * FROM ISBS_CUSTOMER_MST;
CUST_ID LOGIN_ID CUST_NM CUST_ADDR
-------------- -------- --------------- ------------------------------------------------------
CUST0000000001 USER1 User Login ID 1 143/1 Uthamar Gandhi Salai, Nungambakkam, Chennai - 34
CUST0000000002 USER2 User Login ID 2 143/2 Uthamar Gandhi Salai, Nungambakkam, Chennai - 34
CUST0000000003 USER3 User Login ID 3 143/3 Uthamar Gandhi Salai, Nungambakkam, Chennai - 34
CUST0000000004 USER4 User Login ID 4 143/4 Uthamar Gandhi Salai, Nungambakkam, Chennai - 34
SELECT * FROM ISBS_CUSTOMER_SCHEME_XREF;
CUST_SCHEME_XR CUST_ID SCHEME_DETAIL_ID EFFECTIVE_DTTM
-------------- -------------- ---------------- ----------------------------
CXR0000000001 CUST0000000001 SCD0000000001 01-SEP-08 12.01.00.000000 AM
CXR0000000002 CUST0000000002 SCD0000000001 01-SEP-08 12.01.00.000000 AM
CXR0000000003 CUST0000000002 SCD0000000002 24-SEP-08 03.10.00.000000 AM
CXR0000000004 CUST0000000003 SCD0000000001 01-SEP-08 12.01.00.000000 AM
CXR0000000005 CUST0000000003 SCD0000000003 16-SEP-08 10.01.00.000000 AM
CXR0000000006 CUST0000000004 SCD0000000002 01-SEP-08 12.01.00.000000 AM
CXR0000000007 CUST0000000004 SCD0000000004 10-SEP-08 03.01.00.000000 AM
CXR0000000008 CUST0000000004 SCD0000000005 24-SEP-08 11.15.00.000000 AM
SELECT * FROM ISBS_BYTE_SCHEME_DET;
SCHEME_DETAIL_ID SCHEME_ID RATE_PER_BYTE_AMT
---------------- -------------- -----------------
SCD0000000005 SCH0000000003 .001
SCD0000000006 SCH0000000003
.0015
SELECT * FROM ISBS_TIME_SCHEME_DET;
SCHEME_DETAIL_ID IDX SCHEME_ID RATE_EFFECTIVE_FROM_TM RATE_EFFECTIVE_TO_TM RATE_PER_MIN_AMT
---------------- ---- -------------- ---------------------- -------------------- ----------------
SCD0000000003 1 SCH0000000002 2200 0400 .1
SCD0000000003 2 SCH0000000002 0400 1000 .2
SCD0000000003 3 SCH0000000002 1000 1800 .5
SCD0000000003 4 SCH0000000002 1800 2200 .3
SCD0000000004 1 SCH0000000002 2200 0400 .05
SCD0000000004 2 SCH0000000002 0400 1000 .25
SCD0000000004 3 SCH0000000002 1000 1800 .35
SCD0000000004 4 SCH0000000002 1800 2200 .3