PL/SQL (MOSC)

MOSC Banner

PL/SQL code using WITH

edited Jan 11, 2016 2:32PM in PL/SQL (MOSC) 2 commentsAnswered ✓

WITH couples AS (select id,

                        trx_number,

                        count(*) cnt

                  from xxxx

                  where  request_id=123

                  group by id, trx_number 

                --  order by trx_number --cnt         

                ),

    couples_rn AS (SELECT rownum rn,

                          id,

                          trx_number,

                          cnt

                    FROM couples

                    WHERE cnt <= 4

                  )                 

SELECt rn,

      id,

      trx_number,

      cnt,

      cnt_sum,

      batch_number   

FROM couples_rn

MODEL DIMENSION BY (rn)

      MEASURES(id, trx_number, cnt, cnt as cnt_sum, 1 as batch_number)

      RULES(

            cnt_sum[rn > 1] = case when cnt_sum[CV()-1] + cnt[CV()] > 50 then cnt[CV()] else cnt_sum[CV()-1] + cnt[CV()] end,

            batch_number[rn > 1] = case when cnt_sum[CV()-1] + cnt[CV()] > 50 then batch_number[CV()-1] + 1 else batch_number[CV()-1] end

Howdy, Stranger!

Log In

To view full details, sign in to My Oracle Support Community.

Register

Don't have a My Oracle Support Community account? Click here to get started.

Category Leaderboard

Top contributors this month

New to My Oracle Support Community? Visit our Welcome Center

MOSC Help Center