Tough Oracle Logic in Ux


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users Tough Oracle Logic in Ux
# 1  
Old 02-19-2010
Tough Oracle Logic in Ux

How Can this logic be implemented in Unix

Code:
SELECT
    B.SERVICE_TYPE       || '|' ||
    B.TOTAL_TYPE         || '|' ||
    B.CALL_INDICATOR     || '|' ||
    B.A_NUMBER           || '|' ||
    B.APN                || '|' ||
    B.DAY                || '|' ||
    B.HOUR               || '|' ||
    B.DURATION           || '|' ||
    B.PARTIAL_INDICATOR  || '|' ||
    B.EQUIPMENT_ID_A     || '|' ||
    B.LOCATION_AREA_ID   || '|' ||
    B.DATA_VOLUME_INCOMING|| '|' ||
    B.DATA_VOLUME_OUTGOING|| '|' ||
    B.DW_BATCH_ID         || '|' ||
    B.CALL
FROM (
SELECT
    ROW_NUMBER()
        OVER (PARTITION BY SERVICE_TYPE,TOTAL_TYPE,CALL_INDICATOR,A_NUMBER,APN,DAY,HOUR
                ORDER BY SERVICE_TYPE,TOTAL_TYPE,CALL_INDICATOR,A_NUMBER,APN,DAY,HOUR) RN
    ,SERVICE_TYPE
    ,TOTAL_TYPE
    ,CALL_INDICATOR
    ,A_NUMBER
    ,APN
    ,DAY
    ,HOUR
    ,PARTIAL_INDICATOR
    ,EQUIPMENT_ID_A
    ,LOCATION_AREA_ID
    ,DW_BATCH_ID
    ,SUM(DURATION)
        OVER (PARTITION BY SERVICE_TYPE,TOTAL_TYPE,CALL_INDICATOR,A_NUMBER,APN,DAY,HOUR
                ORDER BY SERVICE_TYPE,TOTAL_TYPE,CALL_INDICATOR,A_NUMBER,APN,DAY,HOUR) DURATION
    ,SUM(DATA_VOLUME_INCOMING)
        OVER (PARTITION BY SERVICE_TYPE,TOTAL_TYPE,CALL_INDICATOR,A_NUMBER,APN,DAY,HOUR
                ORDER BY SERVICE_TYPE,TOTAL_TYPE,CALL_INDICATOR,A_NUMBER,APN,DAY,HOUR) DATA_VOLUME_INCOMING
    ,SUM(DATA_VOLUME_OUTGOING)
        OVER (PARTITION BY SERVICE_TYPE,TOTAL_TYPE,CALL_INDICATOR,A_NUMBER,APN,DAY,HOUR
                ORDER BY SERVICE_TYPE,TOTAL_TYPE,CALL_INDICATOR,A_NUMBER,APN,DAY,HOUR) DATA_VOLUME_OUTGOING
    ,SUM(CALL)
        OVER (PARTITION BY SERVICE_TYPE,TOTAL_TYPE,CALL_INDICATOR,A_NUMBER,APN,DAY,HOUR
                ORDER BY SERVICE_TYPE,TOTAL_TYPE,CALL_INDICATOR,A_NUMBER,APN,DAY,HOUR) CALL
FROM
    P_NETWORK_GPRS_1) B
WHERE B.RN=1;

Is it really possible, need some help badly from the experts on this forum..

a very high requirement is performance.. that's why i'm trying to convert to unix.

Thanks
# 2  
Old 02-19-2010
Unix isn't a programming language. Please clarify what you are looking for.
# 3  
Old 02-19-2010
What i am trying to do is ..

I have a CSV file with columns
Code:
SERVICE_TYPE
    ,TOTAL_TYPE
    ,CALL_INDICATOR
    ,A_NUMBER
    ,APN
    ,DAY
    ,HOUR
    ,PARTIAL_INDICATOR
    ,EQUIPMENT_ID_A
    ,LOCATION_AREA_ID
    ,DW_BATCH_ID
* DURATION 
* DATA_VOLUME_INCOMING
* DATA_VOLUME_OUTGOING
* CALL

& required to do some special aggregation:


1) for common lines having equal values
(SERVICE_TYPE,TOTAL_TYPE,CALL_INDICATOR,A_NUMBER,APN,DAY,HOUR)
Aggregate/(i.e. sum) (*) columns
While keeping first appearing values for rest of columns
Code:
(PARTIAL_INDICATOR
    ,EQUIPMENT_ID_A
    ,LOCATION_AREA_ID
    ,DW_BATCH_ID)

ex:
Code:
1,2,3,4,6,7,0
1,2,3,5,3,6,7

for lines with (1,2,3)
sum last 2 columns, (13,7)
while having 4,6 at the result

result: 1,2,3,4,6,*13,*7

Thanks

Last edited by Scott; 02-19-2010 at 08:10 PM.. Reason: Please use code tags
# 4  
Old 02-19-2010
How are you doing this now ? What Unix has to do with it ?
Login or Register to Ask a Question

Previous Thread | Next Thread

1 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

tough parsing

I have a string as "Period= 20090531 Client Name= Clayton Lumbar Company Destination= MD" I want to parse the string and store it in 3 different variables. $period (should get value 20090531) $client (should get value "Clayton Lumbar company") $dest (should get value MD) How can I do... (3 Replies)
Discussion started by: paruthiveeran
3 Replies
Login or Register to Ask a Question