To_timestamp query

I have 2 date columns in one table. I want to find the difference between 2 dates in minutes. So I have used to_timestamp function.
But when I convert using to_timestamp function on any column, it shows value for time as 03/10/2009 12:00:00 but in actual I was getting
03/10/2009 05:30:50 even if it was a date column. What should I do to extract value in minutes.
To find the difference in minutes from 2 columns having datatype as Date.

Not sure if there is any better way of doing this.
SQL> with data as
  2  (select (to_date ('10/11/2009 01:40:20 AM', 'mm/dd/yyyy hh:mi:ss am') -
  3      to_date ('10/10/2009 10:50:10 PM', 'mm/dd/yyyy hh:mi:ss am'))diff
  4  from dual)
  5  select 'difference is '||
  6  to_char (round (floor (diff * 1440 /60))) ||' hours '||
  7  to_char (round (mod (diff * 1440, 60)))||' minutes '||
  8  to_char (mod (diff * 86400, 60)) ||' seconds'
  9  from data;
'DIFFERENCEIS'||TO_CHAR(ROUND(FLOOR(DIFF*14
difference is 2 hours 50 minutes 10 seconds

Similar Messages

  • Query help to Get day wise count

    I have a table: Table_Sample with two columns:
    Date_Time_Field - Timestamp;
    Request_Type - Number;
    The insert statement for the table is as follows:
    -- INSERTING into TABLE_SAMPLE1
    Insert into TABLE_SAMPLE1 (DATE_TIME_FIELD,REQUEST_TYPE) values (to_timestamp('01-JUL-07 12.00.09.000000000 PM','DD-MON-RR HH.MI.SS.FF AM'),1);
    Insert into TABLE_SAMPLE1 (DATE_TIME_FIELD,REQUEST_TYPE) values (to_timestamp('01-JUL-07 12.00.09.000000000 PM','DD-MON-RR HH.MI.SS.FF AM'),2);
    Insert into TABLE_SAMPLE1 (DATE_TIME_FIELD,REQUEST_TYPE) values (to_timestamp('12-JUL-07 12.00.09.000000000 PM','DD-MON-RR HH.MI.SS.FF AM'),2);
    Insert into TABLE_SAMPLE1 (DATE_TIME_FIELD,REQUEST_TYPE) values (to_timestamp('01-AUG-07 12.00.09.000000000 PM','DD-MON-RR HH.MI.SS.FF AM'),7);
    Insert into TABLE_SAMPLE1 (DATE_TIME_FIELD,REQUEST_TYPE) values (to_timestamp('21-SEP-07 12.00.09.000000000 PM','DD-MON-RR HH.MI.SS.FF AM'),2);
    Insert into TABLE_SAMPLE1 (DATE_TIME_FIELD,REQUEST_TYPE) values (to_timestamp('03-OCT-07 12.00.09.000000000 PM','DD-MON-RR HH.MI.SS.FF AM'),1);
    Insert into TABLE_SAMPLE1 (DATE_TIME_FIELD,REQUEST_TYPE) values (to_timestamp('13-OCT-07 12.00.09.000000000 PM','DD-MON-RR HH.MI.SS.FF AM'),1);
    Insert into TABLE_SAMPLE1 (DATE_TIME_FIELD,REQUEST_TYPE) values (to_timestamp('04-NOV-07 12.00.09.000000000 PM','DD-MON-RR HH.MI.SS.FF AM'),7);
    I want to get the count of request_Type on each day..In this table some dates are missing, but i want to fill the count of request_Type on those days as 0.
    i.e., expected out put is
    Date          Request_Type              Count(Request_Type)
    01-JUL-07         1                             1
    01-JUL-07         2                             1
    01-JUL-07         7                             0
    02-JUL-07         1                             0
    02-JUL-07         2                             0
    02-JUL-07         7                             0
    03-JUL-07         1                             0
    03-JUL-07         2                             0
    03-JUL-07         7                             0
    11-JUL-07         1                             0
    11-JUL-07         2                             1
    11-JUL-07         7                             0
    :How can i form the query for this

    Using Data Densification for Reporting (available on 10g and above):
    SQL> with Request_Types AS (
      2    select distinct request_type from TABLE_SAMPLE1
      3  ),
      4  Calendar as (
      5    select date '2007-07-01' + level - 1 as date_time
      6    from dual
      7    connect by level <= 13
      8  )
      9  select c.date_time, rt.request_type, sum(case when ts.rowid is null then 0 else 1 end) as cnt
    10  from Request_Types rt
    11    join Calendar c on 1=1
    12    left outer join Table_Sample1 ts partition by (date_time_field, request_type)
    13    on ts.request_type = rt.request_type
    14       and trunc(ts.date_time_field) = c.date_time
    15  group by c.date_time, rt.request_type
    16  order by c.date_time, rt.request_type
    17  ;
    DATE_TIME  REQUEST_TYPE        CNT
    01.07.2007            1          1
    01.07.2007            2          1
    01.07.2007            7          0
    02.07.2007            1          0
    02.07.2007            2          0
    02.07.2007            7          0
    03.07.2007            1          0
    03.07.2007            2          0
    03.07.2007            7          0
    04.07.2007            1          0
    04.07.2007            2          0
    04.07.2007            7          0
    05.07.2007            1          0
    05.07.2007            2          0
    05.07.2007            7          0
    06.07.2007            1          0
    06.07.2007            2          0
    06.07.2007            7          0
    07.07.2007            1          0
    07.07.2007            2          0
    07.07.2007            7          0
    08.07.2007            1          0
    08.07.2007            2          0
    08.07.2007            7          0
    09.07.2007            1          0
    09.07.2007            2          0
    09.07.2007            7          0
    10.07.2007            1          0
    10.07.2007            2          0
    10.07.2007            7          0
    11.07.2007            1          0
    11.07.2007            2          0
    11.07.2007            7          0
    12.07.2007            1          0
    12.07.2007            2          1
    12.07.2007            7          0
    13.07.2007            1          0
    13.07.2007            2          0
    13.07.2007            7          0
    39 rows selected.Regards,
    Dima

  • Lengthy query

    Hi,
    when i am firing below mentioned query it takes more than an hour,but when i put inner join instead of left outer join it fetches immediately
    can someone explain me what this query says why it is taking some much time
    thanks
    SELECT
    TOTAL.product_key ,
    TOTAL.msrepl_tran_version ,
    to_timestamp(TOTAL.time_stamp,'yyyy-mm-dd hh24:mi:ss.FF') AS time_stamp ,
    TOTAL.aux1_changed_on_dt ,
    TOTAL.aux2_changed_on_dt ,
    TOTAL.aux3_changed_on_dt ,
    TOTAL.aux4_changed_on_dt ,
    TOTAL.UPD_INS
    FROM
    SELECT stg_excp.product_key ,
    stg_excp.msrepl_tran_version ,
    stg_excp.aux1_changed_on_dt ,
    stg_excp.aux2_changed_on_dt ,
    stg_excp.aux3_changed_on_dt ,
    stg_excp.aux4_changed_on_dt ,
    CASE
    WHEN ods.product_key IS NULL
    AND ods.timestamp IS NULL
    THEN 'INS'
    ELSE 'UPD'
    END AS UPD_INS
    FROM (SELECT
    /*+ use_hash(rs,prodhdr) */
    rs.product_key ,
    rs.msrepl_tran_version ,
    rs.aux1_changed_on_dt ,
    rs.aux2_changed_on_dt ,
    rs.aux3_changed_on_dt ,
    rs.aux4_changed_on_dt
    FROM (SELECT stg.product_key ,
    msrepl_tran_version ,
    stg.time_stamp ,
    aux1_changed_on_dt ,
    aux2_changed_on_dt ,
    aux3_changed_on_dt ,
    aux4_changed_on_dt ,
    excpt.insert_date insert_date ,
    row_number() over(PARTITION BY stg.product_key,stg.time_stamp ORDER BY excpt.insert_date DESC) rnum
    FROM stg_lkp_var_prodauditdata stg
    LEFT OUTER JOIN
    (SELECT SUBSTR(primary_key_value, instr(primary_key_value, ' |@|PRODUCT_KEY', 1)
    + LENGTH(' |@|PRODUCT_KEY :'), (instr(primary_key_value, ' |@|',
    instr(primary_key_value, ' |@|PRODUCT_KEY', 1)
    + LENGTH(' |@|PRODUCT_KEY :') + 1))
    -(instr(primary_key_value, ' |@|PRODUCT_KEY', 1)
    + LENGTH(' |@|PRODUCT_KEY :'))) AS product_key,
    SUBSTR(primary_key_value, instr(primary_key_value, ' |@|TIME_STAMP', 1)
    + LENGTH(' |@|TIME_STAMP :'), (instr(primary_key_value, ' |@|',
    instr(primary_key_value, ' |@|TIME_STAMP', 1)
    + LENGTH(' |@|TIME_STAMP :') + 1))
    -(instr(primary_key_value, ' |@|TIME_STAMP', 1)
    + LENGTH(' |@|TIME_STAMP :'))) AS time_stamp ,
    insert_date
    FROM mes_ods.ods_exception_table
    WHERE TABLE_NAME = UPPER('ods_lkp_var_prodauditdata')
    AND processed = 'NO'
    excpt
    ON NVL(excpt.product_key, '`@') = stg.product_key
    AND SUBSTR(TO_CHAR(to_timestamp(excpt.time_stamp,'yyyy-mm-dd hh24:mi:ss.FF'),'mmddyyyyhh24missff'),1, 17) =
    SUBSTR(TO_CHAR(to_timestamp(stg.time_stamp, 'yyyy-mm-dd hh24:mi:ss.FF'), 'mmddyyyyhh24missff'), 1, 17)
    WHERE (
    changed_on_dt > to_date('05/25/2013 00:00:00', 'MM/DD/YYYY HH24:MI:SS')
    OR
    excpt.product_key IS NOT NULL
    AND excpt.time_stamp IS NOT NULL
    ) rs
    INNER JOIN mes_ods.ods_lkp_var_prodhdr prodhdr
    ON rs.product_key = prodhdr.product_key
    WHERE rs.rnum = 1) stg_excp
    LEFT OUTER JOIN (select * from mes_ods.ods_lkp_var_prodauditdata
    where timestamp between trunc(last_day(add_months(sysdate, -7))+1) and systimestamp) ods
    ON stg_excp.product_key = ods.product_key
    AND SUBSTR(to_char(to_timestamp(stg_excp.time_stamp, 'yyyy-mm-dd hh24:mi:ss.FF'), 'mmddyyyyhh24missff'), 1,17)
    = SUBSTR(to_char(ods.timestamp,'mmddyyyyhh24missff'), 1,17)
    )TOTAL
    thanks
    Edited by: 896398 on May 29, 2013 3:38 AM

    896398 wrote:
    Hi,
    thanks for reply
    i identified the query which is taking lots of time but what has to be done here in this case.help me with the steps
    LEFT OUTER JOIN
    (SELECT SUBSTR(primary_key_value, instr(primary_key_value, ' |@|PRODUCT_KEY', 1)
    + LENGTH(' |@|PRODUCT_KEY :'), (instr(primary_key_value, ' |@|',
    instr(primary_key_value, ' |@|PRODUCT_KEY', 1)
    + LENGTH(' |@|PRODUCT_KEY :') + 1))
    -(instr(primary_key_value, ' |@|PRODUCT_KEY', 1)
    + LENGTH(' |@|PRODUCT_KEY :'))) AS product_key,
    SUBSTR(primary_key_value, instr(primary_key_value, ' |@|TIME_STAMP', 1)
    + LENGTH(' |@|TIME_STAMP :'), (instr(primary_key_value, ' |@|',
    instr(primary_key_value, ' |@|TIME_STAMP', 1)
    + LENGTH(' |@|TIME_STAMP :') + 1))
    -(instr(primary_key_value, ' |@|TIME_STAMP', 1)
    + LENGTH(' |@|TIME_STAMP :'))) AS time_stamp ,
    insert_date
    FROM mes_ods.ods_exception_table
    WHERE TABLE_NAME = UPPER('ods_lkp_var_prodauditdata')
    AND processed = 'NO'In his reply he quoted
    How to Post a SQL statement tuning request
    HOW TO: Post a SQL statement tuning request - template posting
    which you obviously ignored. you haven't done any of the things mentioned in that post.
    If you can't be be bothered to provide the requested information, how do you expect us to help?

  • "median count" in a single group by query

    Hallo following problem:
    i use a single group by query to analyze a data table.
    like "select avg(parameter1), sum(parameter2), count(case when...end) from datatable where ....".
    Following problem: I want a median of a count without rewriting the query completely, accessing the table several times or something.
    Easy example - in Detail:
    Create table and fill with example data
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    SQL> CREATE TABLE datatable
      2  (
      3    SLOT NUMBER
      4  , DATA NUMBER
      5  );
    Table created.
    SQL> INSERT INTO datatable VALUES (1,1);
    1 row created.
    SQL> INSERT INTO datatable VALUES (1,2);
    1 row created.
    SQL> INSERT INTO datatable VALUES (1,3);
    1 row created.
    SQL> INSERT INTO datatable VALUES (1,4);
    1 row created.
    SQL> INSERT INTO datatable VALUES (1,5);
    1 row created.
    SQL> INSERT INTO datatable VALUES (2,1);
    1 row created.
    SQL> INSERT INTO datatable VALUES (3,1);
    1 row created.
    SQL> INSERT INTO datatable VALUES (3,2);
    1 row created.
    SQL> INSERT INTO datatable VALUES (3,3);
    1 row created.
    SQL> INSERT INTO datatable VALUES (3,4);
    1 row created.
    SQL> INSERT INTO datatable VALUES (3,5);
    1 row created.
    SQL> INSERT INTO datatable VALUES (4,1);
    1 row created.
    SQL> INSERT INTO datatable VALUES (4,2);
    1 row created.
    SQL> INSERT INTO datatable VALUES (4,3);
    1 row created.
    SQL> INSERT INTO datatable VALUES (4,4);
    1 row created.
    SQL> INSERT INTO datatable VALUES (4,5);
    1 row created.
    SQL> INSERT INTO datatable VALUES (5,1);
    1 row created.
    SQL> INSERT INTO datatable VALUES (5,2);
    1 row created.
    SQL> INSERT INTO datatable VALUES (5,3);
    1 row created.
    SQL> INSERT INTO datatable VALUES (5,4);
    1 row created.
    SQL> INSERT INTO datatable VALUES (5,5);
    1 row created.In the table there are several items (here slots) with a for each slot unique data-value.
    I want to have the median count of data values, to filter out slots with more or less values.
    this worked, until there where only slots with less data:
    SQL> SELECT FLOOR(COUNT(DISTINCT SLOT||DATA)/COUNT(DISTINCT DATA)) FROM datatabl
    e;
    FLOOR(COUNT(DISTINCTSLOT||DATA)/COUNT(DISTINCTDATA))
                                                       4but when there is a slot having more data - it won't work, the very simple and stupid calculation will give a too little value
    SQL>
    SQL> INSERT INTO datatable VALUES (4,6);
    1 row created.
    SQL>
    SQL> SELECT FLOOR(COUNT(DISTINCT SLOT||DATA)/COUNT(DISTINCT DATA)) FROM datatabl
    e;
    FLOOR(COUNT(DISTINCTSLOT||DATA)/COUNT(DISTINCTDATA))
                                                       3so what i would need is this:
    SQL>
    SQL> SELECT MEDIAN(count(DISTINCT SLOT) over (partition by DATA)) FROM datatable
    SELECT MEDIAN(count(DISTINCT SLOT) over (partition by DATA)) FROM datatable
    ERROR at line 1:
    ORA-30483: window  functions are not allowed hereIn detail:
    the count delivers the distinct count of slots for each data (possible duplicated entrys should not be counted)
    And I want the median, which should be 4.
    SQL> SELECT count(DISTINCT SLOT) over (partition by DATA) FROM datatable;
    COUNT(DISTINCTSLOT)OVER(PARTITIONBYDATA)
                                           5
                                           5
                                           5
                                           5
                                           5
                                           4
                                           4
                                           4
                                           4
                                           4
                                           4
                                           4
                                           4
                                           4
                                           4
                                           4
                                           4
                                           4
                                           4
                                           4
                                           4
    COUNT(DISTINCTSLOT)OVER(PARTITIONBYDATA)
                                           1
    22 rows selected.Is it -anyhow- possible to do this without rebuilding the whole query?
    Thanks a lot

    ok, an example:
      CREATE TABLE "DATATABLE"
       (     "TOOL" CHAR(5 BYTE),
         "SLOT" NUMBER,
         "LOTID" CHAR(4 BYTE),
         "STEP" VARCHAR2(44 BYTE),
         "ENDTIME" DATE,
         "PARAMETER1" NUMBER,
         "PARAMETER6" NUMBER
    Insert into DATATABLE  values ('TOOL1',-1,'LOT1','STEP1',to_timestamp('02-FEB-12 03.09.42 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',-1,'LOT1','STEP2',to_timestamp('02-FEB-12 03.18.47 PM','DD-MON-RR HH.MI.SS AM'),42,0);
    Insert into DATATABLE  values ('TOOL1',-1,'LOT1','STEP3',to_timestamp('02-FEB-12 03.09.44 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',-1,'LOT1','STEP4',to_timestamp('02-FEB-12 02.20.38 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',-1,'LOT1','STEP5',to_timestamp('02-FEB-12 02.20.35 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',1,'LOT1','STEP1',to_timestamp('02-FEB-12 01.51.28 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',1,'LOT1','STEP2',to_timestamp('02-FEB-12 01.52.40 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',1,'LOT1','STEP3',to_timestamp('02-FEB-12 01.54.20 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',1,'LOT1','STEP4',to_timestamp('02-FEB-12 01.55.32 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',1,'LOT1','STEP5',to_timestamp('02-FEB-12 01.56.36 PM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',2,'LOT1','STEP1',to_timestamp('02-FEB-12 01.52.41 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',3,'LOT1','STEP1',to_timestamp('02-FEB-12 02.00.29 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',3,'LOT1','STEP2',to_timestamp('02-FEB-12 02.01.43 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',3,'LOT1','STEP3',to_timestamp('02-FEB-12 02.03.23 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',3,'LOT1','STEP4',to_timestamp('02-FEB-12 02.04.34 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',3,'LOT1','STEP5',to_timestamp('02-FEB-12 02.05.40 PM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',4,'LOT1','STEP1',to_timestamp('02-FEB-12 02.02.11 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',4,'LOT1','STEP2',to_timestamp('02-FEB-12 02.03.26 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',4,'LOT1','STEP3',to_timestamp('02-FEB-12 02.05.07 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',4,'LOT1','STEP4',to_timestamp('02-FEB-12 02.06.19 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',4,'LOT1','STEP5',to_timestamp('02-FEB-12 02.07.27 PM','DD-MON-RR HH.MI.SS AM'),20,0);
    Insert into DATATABLE  values ('TOOL1',5,'LOT1','STEP1',to_timestamp('02-FEB-12 02.03.54 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',5,'LOT1','STEP2',to_timestamp('02-FEB-12 02.05.08 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',5,'LOT1','STEP3',to_timestamp('02-FEB-12 02.06.49 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',5,'LOT1','STEP4',to_timestamp('02-FEB-12 02.08.01 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',5,'LOT1','STEP5',to_timestamp('02-FEB-12 02.14.26 PM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',6,'LOT1','STEP1',to_timestamp('02-FEB-12 02.05.35 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',6,'LOT1','STEP2',to_timestamp('02-FEB-12 02.06.50 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',6,'LOT1','STEP3',to_timestamp('02-FEB-12 02.15.14 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',6,'LOT1','STEP4',to_timestamp('02-FEB-12 02.16.26 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',6,'LOT1','STEP5',to_timestamp('02-FEB-12 02.17.31 PM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',7,'LOT1','STEP1',to_timestamp('02-FEB-12 02.06.42 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',8,'LOT1','STEP1',to_timestamp('02-FEB-12 02.14.14 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',8,'LOT1','STEP2',to_timestamp('02-FEB-12 02.15.29 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',8,'LOT1','STEP3',to_timestamp('02-FEB-12 02.17.09 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',8,'LOT1','STEP4',to_timestamp('02-FEB-12 02.18.22 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',8,'LOT1','STEP5',to_timestamp('02-FEB-12 02.23.31 PM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',9,'LOT1','STEP1',to_timestamp('02-FEB-12 02.58.14 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',9,'LOT1','STEP2',to_timestamp('02-FEB-12 02.15.32 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',9,'LOT1','STEP3',to_timestamp('02-FEB-12 02.59.30 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',9,'LOT1','STEP4',to_timestamp('02-FEB-12 03.01.15 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',9,'LOT1','STEP5',to_timestamp('02-FEB-12 03.07.52 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',10,'LOT1','STEP1',to_timestamp('02-FEB-12 02.23.20 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',10,'LOT1','STEP2',to_timestamp('02-FEB-12 02.24.39 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',10,'LOT1','STEP3',to_timestamp('02-FEB-12 02.26.19 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',10,'LOT1','STEP4',to_timestamp('02-FEB-12 02.27.30 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',10,'LOT1','STEP5',to_timestamp('02-FEB-12 02.28.34 PM','DD-MON-RR HH.MI.SS AM'),17,0);
    Insert into DATATABLE  values ('TOOL1',11,'LOT1','STEP1',to_timestamp('02-FEB-12 02.59.37 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',11,'LOT1','STEP2',to_timestamp('02-FEB-12 03.10.51 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',11,'LOT1','STEP3',to_timestamp('02-FEB-12 02.24.52 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',11,'LOT1','STEP4',to_timestamp('02-FEB-12 03.12.03 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',11,'LOT1','STEP5',to_timestamp('02-FEB-12 03.13.41 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',12,'LOT1','STEP1',to_timestamp('02-FEB-12 02.32.30 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',12,'LOT1','STEP2',to_timestamp('02-FEB-12 02.33.43 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',12,'LOT1','STEP3',to_timestamp('02-FEB-12 02.35.24 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',12,'LOT1','STEP4',to_timestamp('02-FEB-12 02.36.35 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',12,'LOT1','STEP5',to_timestamp('02-FEB-12 02.37.41 PM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',13,'LOT1','STEP1',to_timestamp('02-FEB-12 02.34.11 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',13,'LOT1','STEP2',to_timestamp('02-FEB-12 02.35.26 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',13,'LOT1','STEP3',to_timestamp('02-FEB-12 02.37.06 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',13,'LOT1','STEP4',to_timestamp('02-FEB-12 02.38.19 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',13,'LOT1','STEP5',to_timestamp('02-FEB-12 02.39.29 PM','DD-MON-RR HH.MI.SS AM'),17,0);
    Insert into DATATABLE  values ('TOOL1',14,'LOT1','STEP1',to_timestamp('02-FEB-12 02.35.54 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',14,'LOT1','STEP2',to_timestamp('02-FEB-12 02.37.08 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',14,'LOT1','STEP3',to_timestamp('02-FEB-12 02.38.48 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',14,'LOT1','STEP4',to_timestamp('02-FEB-12 02.40.01 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',14,'LOT1','STEP5',to_timestamp('02-FEB-12 02.41.13 PM','DD-MON-RR HH.MI.SS AM'),13,0);
    Insert into DATATABLE  values ('TOOL1',15,'LOT1','STEP1',to_timestamp('02-FEB-12 02.37.37 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',15,'LOT1','STEP2',to_timestamp('02-FEB-12 02.38.52 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',15,'LOT1','STEP3',to_timestamp('02-FEB-12 02.40.33 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',15,'LOT1','STEP4',to_timestamp('02-FEB-12 02.41.46 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',15,'LOT1','STEP5',to_timestamp('02-FEB-12 02.42.58 PM','DD-MON-RR HH.MI.SS AM'),17,0);
    Insert into DATATABLE  values ('TOOL1',16,'LOT1','STEP1',to_timestamp('02-FEB-12 02.39.20 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',16,'LOT1','STEP2',to_timestamp('02-FEB-12 02.40.34 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',16,'LOT1','STEP3',to_timestamp('02-FEB-12 02.42.16 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',16,'LOT1','STEP4',to_timestamp('02-FEB-12 02.43.29 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',16,'LOT1','STEP5',to_timestamp('02-FEB-12 02.44.42 PM','DD-MON-RR HH.MI.SS AM'),15,0);
    Insert into DATATABLE  values ('TOOL1',17,'LOT1','STEP1',to_timestamp('02-FEB-12 02.41.04 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',17,'LOT1','STEP2',to_timestamp('02-FEB-12 02.42.19 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',17,'LOT1','STEP3',to_timestamp('02-FEB-12 02.43.59 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',17,'LOT1','STEP4',to_timestamp('02-FEB-12 02.45.13 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',17,'LOT1','STEP5',to_timestamp('02-FEB-12 02.46.26 PM','DD-MON-RR HH.MI.SS AM'),13,0);
    Insert into DATATABLE  values ('TOOL1',18,'LOT1','STEP1',to_timestamp('02-FEB-12 02.42.49 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',18,'LOT1','STEP2',to_timestamp('02-FEB-12 02.44.03 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',18,'LOT1','STEP3',to_timestamp('02-FEB-12 02.45.44 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',18,'LOT1','STEP4',to_timestamp('02-FEB-12 02.47.01 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',18,'LOT1','STEP5',to_timestamp('02-FEB-12 02.48.10 PM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',19,'LOT1','STEP1',to_timestamp('02-FEB-12 02.44.33 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',19,'LOT1','STEP2',to_timestamp('02-FEB-12 02.45.47 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',19,'LOT1','STEP3',to_timestamp('02-FEB-12 02.47.31 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',19,'LOT1','STEP4',to_timestamp('02-FEB-12 02.48.45 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',19,'LOT1','STEP5',to_timestamp('02-FEB-12 02.49.58 PM','DD-MON-RR HH.MI.SS AM'),14,0);
    Insert into DATATABLE  values ('TOOL1',20,'LOT1','STEP1',to_timestamp('02-FEB-12 02.46.17 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',20,'LOT1','STEP2',to_timestamp('02-FEB-12 02.47.31 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',20,'LOT1','STEP3',to_timestamp('02-FEB-12 02.49.16 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',20,'LOT1','STEP4',to_timestamp('02-FEB-12 02.50.31 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',20,'LOT1','STEP5',to_timestamp('02-FEB-12 02.51.42 PM','DD-MON-RR HH.MI.SS AM'),14,0);
    Insert into DATATABLE  values ('TOOL1',21,'LOT1','STEP1',to_timestamp('02-FEB-12 02.48.01 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',21,'LOT1','STEP2',to_timestamp('02-FEB-12 02.49.16 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',21,'LOT1','STEP3',to_timestamp('02-FEB-12 02.51.02 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',21,'LOT1','STEP4',to_timestamp('02-FEB-12 02.52.16 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',21,'LOT1','STEP5',to_timestamp('02-FEB-12 02.55.04 PM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',22,'LOT1','STEP1',to_timestamp('02-FEB-12 02.49.48 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',22,'LOT1','STEP2',to_timestamp('02-FEB-12 02.51.02 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',22,'LOT1','STEP3',to_timestamp('02-FEB-12 02.52.47 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',22,'LOT1','STEP4',to_timestamp('02-FEB-12 02.55.39 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',22,'LOT1','STEP5',to_timestamp('02-FEB-12 02.56.45 PM','DD-MON-RR HH.MI.SS AM'),15,0);
    Insert into DATATABLE  values ('TOOL1',23,'LOT1','STEP1',to_timestamp('02-FEB-12 02.51.33 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',23,'LOT1','STEP2',to_timestamp('02-FEB-12 02.52.48 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',23,'LOT1','STEP3',to_timestamp('02-FEB-12 02.56.11 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',23,'LOT1','STEP4',to_timestamp('02-FEB-12 02.57.23 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',23,'LOT1','STEP5',to_timestamp('02-FEB-12 02.58.29 PM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',24,'LOT1','STEP1',to_timestamp('02-FEB-12 02.53.18 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',24,'LOT1','STEP2',to_timestamp('02-FEB-12 02.56.00 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',24,'LOT1','STEP3',to_timestamp('02-FEB-12 02.57.53 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',24,'LOT1','STEP4',to_timestamp('02-FEB-12 02.59.05 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',24,'LOT1','STEP5',to_timestamp('02-FEB-12 03.00.12 PM','DD-MON-RR HH.MI.SS AM'),17,0);
    Insert into DATATABLE  values ('TOOL1',25,'LOT1','STEP1',to_timestamp('02-FEB-12 02.56.29 PM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',25,'LOT1','STEP2',to_timestamp('02-FEB-12 02.57.44 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',25,'LOT1','STEP3',to_timestamp('02-FEB-12 02.59.35 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',25,'LOT1','STEP4',to_timestamp('02-FEB-12 03.00.46 PM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',25,'LOT1','STEP5',to_timestamp('02-FEB-12 03.07.19 PM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',-1,'LOT2','STEP1',to_timestamp('24-FEB-12 03.19.26 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',1,'LOT2','STEP1',to_timestamp('24-FEB-12 03.00.47 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',1,'LOT2','STEP2',to_timestamp('24-FEB-12 03.02.56 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',1,'LOT2','STEP3',to_timestamp('24-FEB-12 03.03.56 AM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',2,'LOT2','STEP1',to_timestamp('24-FEB-12 03.02.22 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',2,'LOT2','STEP2',to_timestamp('24-FEB-12 03.05.06 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',2,'LOT2','STEP3',to_timestamp('24-FEB-12 03.06.06 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',3,'LOT2','STEP1',to_timestamp('24-FEB-12 03.03.56 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',3,'LOT2','STEP2',to_timestamp('24-FEB-12 03.07.15 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',3,'LOT2','STEP3',to_timestamp('24-FEB-12 03.13.53 AM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',4,'LOT2','STEP1',to_timestamp('24-FEB-12 03.05.54 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',4,'LOT2','STEP2',to_timestamp('24-FEB-12 03.15.03 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',4,'LOT2','STEP3',to_timestamp('24-FEB-12 03.16.04 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',5,'LOT2','STEP1',to_timestamp('24-FEB-12 03.05.58 AM','DD-MON-RR HH.MI.SS AM'),0,0);
    Insert into DATATABLE  values ('TOOL1',5,'LOT2','STEP2',to_timestamp('24-FEB-12 03.25.35 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',5,'LOT2','STEP3',to_timestamp('24-FEB-12 03.29.56 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',5,'LOT2','STEP4',to_timestamp('24-FEB-12 03.30.57 AM','DD-MON-RR HH.MI.SS AM'),16,0);
    Insert into DATATABLE  values ('TOOL1',6,'LOT2','STEP1',to_timestamp('24-FEB-12 03.14.18 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',6,'LOT2','STEP2',to_timestamp('24-FEB-12 03.17.13 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',6,'LOT2','STEP3',to_timestamp('24-FEB-12 03.19.55 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',7,'LOT2','STEP1',to_timestamp('24-FEB-12 03.15.51 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',7,'LOT2','STEP2',to_timestamp('24-FEB-12 03.21.18 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',7,'LOT2','STEP3',to_timestamp('24-FEB-12 03.22.19 AM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',8,'LOT2','STEP1',to_timestamp('24-FEB-12 03.17.50 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',8,'LOT2','STEP2',to_timestamp('24-FEB-12 03.23.28 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',8,'LOT2','STEP3',to_timestamp('24-FEB-12 03.24.29 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',9,'LOT2','STEP1',to_timestamp('24-FEB-12 03.21.42 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',9,'LOT2','STEP2',to_timestamp('24-FEB-12 03.25.37 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',9,'LOT2','STEP3',to_timestamp('24-FEB-12 03.26.38 AM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',10,'LOT2','STEP1',to_timestamp('24-FEB-12 03.23.25 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',10,'LOT2','STEP2',to_timestamp('24-FEB-12 03.27.47 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',10,'LOT2','STEP3',to_timestamp('24-FEB-12 03.28.47 AM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',11,'LOT2','STEP1',to_timestamp('24-FEB-12 03.27.44 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',11,'LOT2','STEP2',to_timestamp('24-FEB-12 03.32.06 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',11,'LOT2','STEP3',to_timestamp('24-FEB-12 03.33.07 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',12,'LOT2','STEP1',to_timestamp('24-FEB-12 03.29.54 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',12,'LOT2','STEP2',to_timestamp('24-FEB-12 03.34.16 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',12,'LOT2','STEP3',to_timestamp('24-FEB-12 03.35.17 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',13,'LOT2','STEP1',to_timestamp('24-FEB-12 03.32.04 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',13,'LOT2','STEP2',to_timestamp('24-FEB-12 03.36.26 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',13,'LOT2','STEP3',to_timestamp('24-FEB-12 03.37.27 AM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',14,'LOT2','STEP1',to_timestamp('24-FEB-12 03.34.14 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',14,'LOT2','STEP2',to_timestamp('24-FEB-12 03.38.36 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',14,'LOT2','STEP3',to_timestamp('24-FEB-12 03.39.37 AM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',15,'LOT2','STEP1',to_timestamp('24-FEB-12 03.36.24 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',15,'LOT2','STEP2',to_timestamp('24-FEB-12 03.40.46 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',15,'LOT2','STEP3',to_timestamp('24-FEB-12 03.41.46 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',16,'LOT2','STEP1',to_timestamp('24-FEB-12 03.38.34 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',16,'LOT2','STEP2',to_timestamp('24-FEB-12 03.42.55 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',16,'LOT2','STEP3',to_timestamp('24-FEB-12 03.43.56 AM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',17,'LOT2','STEP1',to_timestamp('24-FEB-12 03.40.43 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',17,'LOT2','STEP2',to_timestamp('24-FEB-12 03.45.05 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',17,'LOT2','STEP3',to_timestamp('24-FEB-12 03.46.06 AM','DD-MON-RR HH.MI.SS AM'),17,0);
    Insert into DATATABLE  values ('TOOL1',18,'LOT2','STEP1',to_timestamp('24-FEB-12 03.42.53 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',18,'LOT2','STEP2',to_timestamp('24-FEB-12 03.47.15 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',18,'LOT2','STEP3',to_timestamp('24-FEB-12 03.48.16 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',19,'LOT2','STEP1',to_timestamp('24-FEB-12 03.45.03 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',19,'LOT2','STEP2',to_timestamp('24-FEB-12 03.49.25 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',19,'LOT2','STEP3',to_timestamp('24-FEB-12 03.50.26 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',20,'LOT2','STEP1',to_timestamp('24-FEB-12 03.47.13 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',20,'LOT2','STEP2',to_timestamp('24-FEB-12 03.51.34 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',20,'LOT2','STEP3',to_timestamp('24-FEB-12 03.52.35 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',21,'LOT2','STEP1',to_timestamp('24-FEB-12 03.49.22 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',21,'LOT2','STEP2',to_timestamp('24-FEB-12 03.53.44 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',21,'LOT2','STEP3',to_timestamp('24-FEB-12 03.54.45 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',22,'LOT2','STEP1',to_timestamp('24-FEB-12 03.51.32 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',22,'LOT2','STEP2',to_timestamp('24-FEB-12 03.55.54 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',22,'LOT2','STEP3',to_timestamp('24-FEB-12 03.56.55 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',23,'LOT2','STEP1',to_timestamp('24-FEB-12 03.53.42 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',23,'LOT2','STEP2',to_timestamp('24-FEB-12 03.58.03 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',23,'LOT2','STEP3',to_timestamp('24-FEB-12 03.59.04 AM','DD-MON-RR HH.MI.SS AM'),19,0);
    Insert into DATATABLE  values ('TOOL1',24,'LOT2','STEP1',to_timestamp('24-FEB-12 03.55.51 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',24,'LOT2','STEP2',to_timestamp('24-FEB-12 04.00.14 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',24,'LOT2','STEP3',to_timestamp('24-FEB-12 04.01.15 AM','DD-MON-RR HH.MI.SS AM'),18,0);
    Insert into DATATABLE  values ('TOOL1',25,'LOT2','STEP1',to_timestamp('24-FEB-12 03.58.01 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',25,'LOT2','STEP2',to_timestamp('24-FEB-12 04.02.23 AM','DD-MON-RR HH.MI.SS AM'),1,0);
    Insert into DATATABLE  values ('TOOL1',25,'LOT2','STEP3',to_timestamp('24-FEB-12 04.03.24 AM','DD-MON-RR HH.MI.SS AM'),18,0);(code generated by sqldeveloper)
    In the example:
    LOT1 has two slot, with only 1 step instead of 5 --> these slots should not be counted --> result 23
    LOT2 has one slot, with 4 instead of 3 --> this slot is ok and should be counted --> result 25
    as previously mentioned, i want to count all slots, which got at least the median amount of steps [edit: slot -1 should also not be counted]
    LOT1:
        SELECT
          sum(CASE WHEN SLOT != -1 THEN parameter1 END) parameter1,
          min(CASE WHEN SLOT != -1 THEN EndTime END) first_time,
          max(CASE WHEN SLOT != -1 THEN EndTime END) last_time,
          sum(CASE WHEN SLOT != -1 THEN parameter6 END) parameter6,
          CASE WHEN count(DISTINCT CASE WHEN SLOT != -1 THEN SLOT END) > 0 AND ROUND(count(DISTINCT CASE WHEN SLOT != -1 THEN SLOT||STEP END)/count(DISTINCT CASE WHEN SLOT != -1 THEN SLOT END)) > 0 THEN FLOOR(count(DISTINCT CASE WHEN SLOT != -1 THEN SLOT||STEP END)/ROUND(count(DISTINCT CASE WHEN SLOT != -1 THEN SLOT||STEP END)/count(DISTINCT CASE WHEN SLOT != -1 THEN SLOT END))) ELSE NULL END num_slots,
          sum(CASE WHEN SLOT = -1 THEN parameter1 END) minusone_parameter1,
          min(CASE WHEN SLOT = -1 THEN EndTime END) minusone_first_time,
          max(CASE WHEN SLOT = -1 THEN EndTime END) minusone_last_time,
          sum(CASE WHEN SLOT = -1 THEN parameter6 END) minusone_parameter6,
          count(CASE WHEN SLOT = -1 THEN 1 END) num_minusone
        FROM
          datatable
      WHERE
        tool = 'TOOL1'
        AND lotid = 'LOT1';
    PARAMETER1             FIRST_TIME                LAST_TIME                 PARAMETER6             *NUM_SLOTS*              MINUSONE_PARAMETER1    MINUSONE_FIRST_TIME       MINUSONE_LAST_TIME        MINUSONE_PARAMETER6    NUM_MINUSONE          
    423                    02.02.12 13:51:28         02.02.12 15:13:41         0                      *23*                     46                     02.02.12 14:20:35         02.02.12 15:18:47         0                      5                      this is the desired result
    same query with Lot2:
    PARAMETER1             FIRST_TIME                LAST_TIME                 PARAMETER6             *NUM_SLOTS*              MINUSONE_PARAMETER1    MINUSONE_FIRST_TIME       MINUSONE_LAST_TIME        MINUSONE_PARAMETER6    NUM_MINUSONE          
    506                    24.02.12 03:00:47         24.02.12 04:03:24         0                      *25*                     1                      24.02.12 03:19:26         24.02.12 03:19:26         0                      1                      so right now i get the desired results with this ugly query... but with combinations of several different conditions - e.g. several slots with more steps and a few with less... - it may not work.
    Edited by: Paneologist on Feb 24, 2012 7:42 AM

  • Query Tuning - using CASE statement in the WHERE clause

    Hi All,
    My query has been modified to use a CASE statement in the WHERE clause to consider data from certain columns based on a parameter value. This modified query is doing a full table scan and running endlessly. Please suggest what may be done to improve its performance:
    Query:
    SELECT LAST_DAY(TRUNC(TO_TIMESTAMP(os.requestdatetime, 'yyyymmddhh24:mi:ss.ff4'))) AS summary_date,
    os.acctnum,
    os.avieworigin_refid,
    COUNT(1) cnt_articleview,
    SUM(NVL(autocompletedterm,0)) cnt_autocompletedterm
    FROM TABLE1 os
    WHERE os.acctnum IS NOT NULL
    AND os.avieworigin_refid IS NOT NULL
    AND os.requestdatetime IS NOT NULL
    AND UPPER(os.success_ind) = 'S'
    AND CASE WHEN
    Param_ValueToCheck  = 'FULL' AND get_date_timestamp(os.requestdatetime)  BETWEEN
    TO_DATE('01-MAY-2011 00:00:00','DD-MON-YYYY HH24:MI:SS') AND
    TO_DATE('31-MAY-2011 00:00:00','DD-MON-YYYY HH24:MI:SS')
    THEN 1
    WHEN
    Param_ValueToCheck  = 'INCR' AND os.entry_createddate  BETWEEN
    TO_DATE('01-MAY-2011 00:00:00','DD-MON-YYYY HH24:MI:SS') AND
    TO_DATE('31-MAY-2011 00:00:00','DD-MON-YYYY HH24:MI:SS')
    THEN 1
    END = 1
    AND CASE WHEN
    Param_ValueToCheck  = 'FULL' AND os.entry_CreatedDate BETWEEN
    TO_DATE('01-APR-2011 00:00:00','DD-MON-YYYY HH24:MI:SS') AND
    TO_DATE('07-JUN-2011 00:00:00','DD-MON-YYYY HH24:MI:SS')
    THEN 1
    WHEN
    Param_ValueToCheck  = 'INCR' THEN 1
    END = 1
    GROUP BY LAST_DAY(TRUNC(TO_TIMESTAMP(os.requestdatetime, 'yyyymmddhh24:mi:ss.ff4'))), os.acctnum,os.avieworigin_refid;Table Description:
    (Number of rows : approx > 600,000,000)
    Name                           Null     Type      
    ARTICLEID                      NOT NULL NUMBER(20)
    USERKEY                                 NUMBER(10)
    AVIEWORIGIN_REFID                       VARCHAR2(10)
    SUCCESS_IND                             VARCHAR2(2)
    ENTRY_CREATEDDATE                       DATE      
    CREATED_BY                              VARCHAR2(10)
    FILENUMBER                              NUMBER(10)
    LINENUMBER                              NUMBER(10)
    ACCTNUM                                 VARCHAR2(10)
    AUTOCOMPLETEDTERM                       NUMBER(2) 
    REQUESTDATETIME                         VARCHAR2(19)Explain Plan
    SQL> select * from table(dbms_xplan.display);
    PLAN_TABLE_OUTPUT
    Plan hash value: 2224314832
    | Id  | Operation            | Name              | Rows  | Bytes | Cost (%CPU)| Time     | Pstart| Pstop |
    |   0 | SELECT STATEMENT     |                   |   590 | 33040 |  2501K  (1)| 08:20:15 |       |       |
    |   1 |  HASH GROUP BY       |                   |   590 | 33040 |  2501K  (1)| 08:20:15 |       |       |
    |   2 |   PARTITION RANGE ALL|                   |   590 | 33040 |  2501K  (1)| 08:20:15 |     1 |1048575|
    |*  3 |    TABLE ACCESS FULL | TABLE1 |   590 | 33040 |  2501K  (1)| 08:20:15 |     1 |1048575|
    PLAN_TABLE_OUTPUT
    Predicate Information (identified by operation id):
       3 - filter(UPPER("OS"."SUCCESS_IND")='S' AND CASE  WHEN ('FULL'='FULL' AND
                  "OS"."ENTRY_CREATEDDATE">=TO_DATE(' 2011-04-01 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
                  "OS"."ENTRY_CREATEDDATE"<=TO_DATE(' 2011-06-07 00:00:00', 'syyyy-mm-dd hh24:mi:ss')) THEN 1 WHEN
                  'FULL'='INCR' THEN 1 END =1 AND "OS"."REQUESTDATETIME" IS NOT NULL AND CASE  WHEN ('FULL'='FULL'
                  AND "ODS"."GET_DATE_TIMESTAMP"("REQUESTDATETIME")>=TO_DATE(' 2011-05-01 00:00:00', 'syyyy-mm-dd
                  hh24:mi:ss') AND "ODS"."GET_DATE_TIMESTAMP"("REQUESTDATETIME")<=TO_DATE(' 2011-05-31 00:00:00',
                  'syyyy-mm-dd hh24:mi:ss')) THEN 1 WHEN ('FULL'='INCR' AND "OS"."ENTRY_CREATEDDATE">=TO_DATE('
                  2011-05-01 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND "OS"."ENTRY_CREATEDDATE"<=TO_DATE('
    PLAN_TABLE_OUTPUT
                  2011-05-31 00:00:00', 'syyyy-mm-dd hh24:mi:ss')) THEN 1 END =1 AND "OS"."ACCTNUM" IS NOT NULL AND
                  "OS"."AVIEWORIGIN_REFID" IS NOT NULL)Edited by: Chaitanya on Jun 9, 2011 2:44 AM
    Edited by: Chaitanya on Jun 9, 2011 2:47 AM

    Hi Dom,
    Modified Query:
    SELECT LAST_DAY(TRUNC(TO_TIMESTAMP(os.requestdatetime, 'yyyymmddhh24:mi:ss.ff4'))) AS summary_date,
    os.acctnum,
    os.avieworigin_refid,
    COUNT(1) cnt_articleview,
    SUM(NVL(autocompletedterm,0)) cnt_autocompletedterm
    FROM TABLE1 os
    WHERE os.acctnum IS NOT NULL
    AND os.avieworigin_refid IS NOT NULL
    AND os.requestdatetime IS NOT NULL
    AND UPPER(os.success_ind) = 'S'
    AND (('FULL'  = 'FULL'
    AND  (get_date_timestamp(os.requestdatetime)  BETWEEN TO_DATE('01-MAY-2011 00:00:00','DD-MON-YYYY HH24:MI:SS')
                   AND TO_DATE('31-MAY-2011 00:00:00','DD-MON-YYYY HH24:MI:SS')
    AND   os.entry_CreatedDate BETWEEN TO_DATE('01-APR-2011 00:00:00','DD-MON-YYYY HH24:MI:SS')
                   AND TO_DATE('07-JUN-2011 00:00:00','DD-MON-YYYY HH24:MI:SS')
    OR ('FULL'  = 'INCR'
    AND os.entry_createddate  BETWEEN TO_DATE('01-MAY-2011 00:00:00','DD-MON-YYYY HH24:MI:SS')
                   AND TO_DATE('31-MAY-2011 00:00:00','DD-MON-YYYY HH24:MI:SS') ))
    GROUP BY LAST_DAY(TRUNC(TO_TIMESTAMP(os.requestdatetime, 'yyyymmddhh24:mi:ss.ff4'))), os.acctnum,os.avieworigin_refid;Execute Plan:
    PLAN_TABLE_OUTPUT
    Plan hash value: 3615447714
    | Id  | Operation                 | Name              | Rows  | Bytes |TempSpc| Cost (%CPU)| Time     | Pstart| Pstop |
    |   0 | SELECT STATEMENT          |                   | 25125 |  1374K|       |   407K  (1)| 01:21:36 |       |       |
    |   1 |  HASH GROUP BY            |                   | 25125 |  1374K|  3768K|   407K  (1)| 01:21:36 |       |       |
    |   2 |   PARTITION RANGE ITERATOR|                   | 25125 |  1374K|       |   407K  (1)| 01:21:32 |    29 |    31 |
    |*  3 |    TABLE ACCESS FULL      | TABLE1 | 25125 |  1374K|       |   407K  (1)| 01:21:32 |    29 |    31 |
    PLAN_TABLE_OUTPUT
    Predicate Information (identified by operation id):
       3 - filter("OS"."ENTRY_CREATEDDATE">=TO_DATE(' 2011-04-01 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
                  UPPER("OS"."SUCCESS_IND")='S' AND "OS"."REQUESTDATETIME" IS NOT NULL AND
                  "ODS"."GET_DATE_TIMESTAMP"("REQUESTDATETIME")>=TO_DATE(' 2011-05-01 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
                  "ODS"."GET_DATE_TIMESTAMP"("REQUESTDATETIME")<=TO_DATE(' 2011-05-31 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
                  "OS"."ACCTNUM" IS NOT NULL AND "OS"."AVIEWORIGIN_REFID" IS NOT NULL AND "OS"."ENTRY_CREATEDDATE"<=TO_DATE('
                  2011-06-07 00:00:00', 'syyyy-mm-dd hh24:mi:ss'))Edited by: Chaitanya on Jun 9, 2011 4:51 AM

  • Problem with a query with a BLOB data type

    Hi i've a problem with this query in 11g. R1
    SELECT
          LOGTIMESTAMP,
          LOGTIMEMILLIS,
          MSGID,
          XMLTYPE(MESSAGEBODY, nls_charset_id('AL32UTF8')).getClobVal()  as LLamada
    FROM
        vordel.AUDIT_MESSAGE_PAYLOAD,
        vordel.AUDIT_LOG_POINTS
    WHERE
        AUDIT_LOG_POINTS.LOGPOINTSPK = AUDIT_MESSAGE_PAYLOAD.MP_LOGPOINTSPK AND
        LOGTIMESTAMP between TO_TIMESTAMP('03-12-2011 00:00','DD-MM-YYYY HH24:MI') and  TO_TIMESTAMP('03-12-2011 12:00','DD-MM-YYYY HH24:MI')
         and filtertype = 'LogMessagePayloadFilter'
      and filtername like 'Log Llamada%'MESSAGEBODY: data type of the Column is BLOB
    throw this error after execute the query
    Error:
    ORA-31011: XML parsing failed
    ORA-19202: Error occurred in XML processing
    LPX-00200: could not convert from encoding UTF-8 to UCS2
    Error at line 1
    ORA-06512: at "SYS.XMLTYPE", line 283
    ORA-06512: at line 1

    Could you check the BLOB really contains UTF-8 encoded XML?
    What's your database character set?The BLOB contains UTF-8 Encoded
    and the database where i am connectes have AL32UTF8 character set, but my internal instance have "AMERICAN_AMERICA.WE8ISO8859P1"
    that is a problem?
    How could I change the character set of the oracle local client to the character set of the remote oracle data base?

  • Error in merge query of the Proc.

    Hi all,
    Below merge query working fine, if I execite independently. I am getting error as "ORA-00900: invalid SQL statement" when i paste this code inside the procedure. However, if I comment the lines written in bold, proc is working fine. Not sure why the comparison not happening even though code and data is correct. If i use like intead of IN then it is working fine.
    Can you please suggest on this?
    MERGE INTO ENTRYPOINTASSETS
    USING
    (SELECT
    LAST_DAY(TRUNC(to_timestamp(oa.reqdate, 'yyyymmddhh24:mi:ss.ff4'))) as activity_month,
    oa.acctnum as acctnum,
    l.lkpvalue as assettype,
    LOWER(trim(oa.disseminationmthd)) as deliverymthd,
    epa.assetid as assetid,
    epa.assetname as assetname,
    count(1) as entrypointcount
    FROM action oa, asset epa, lookupdata l
    WHERE
    oa.assetkey IS NOT NULL
    AND oa.acctnum is not null
    AND trim(oa.assettype) IN ('NL','WS','AL')
    AND l.lkpid = epa.assettypeid
    AND UPPER(trim(oa.disseminationmthd)) IN ('ABC','BCD', 'PODCAST', 'EMAIL','ED', 'WID')
    AND epa.assetkey = oa.assetkey
    AND epa.assetid <> 0
    GROUP BY
    LAST_DAY(TRUNC(to_timestamp(oa.reqdate, 'yyyymmddhh24:mi:ss.ff4'))),
    oa.acctnum,
    l.lkpvalue,
    LOWER(trim(oa.disseminationmthd)),
    epa.assetid,
    epa.assetname
    ) cvd1
    ON
    (ENTRYPOINTASSETS.activity_month = cvd1.activity_month
    AND ENTRYPOINTASSETS.acctnum = cvd1.acctnum
    AND ENTRYPOINTASSETS.assettype = cvd1.assettype
    AND UPPER(ENTRYPOINTASSETS.deliverymthd) = UPPER(cvd1.deliverymthd)
    AND ENTRYPOINTASSETS.assetid = cvd1.assetid)
    WHEN NOT MATCHED THEN
    INSERT (activity_month, acctnum, assettype, deliverymthd, assetid, assetname, entrypointcount)
    VALUES (cvd1.activity_month, cvd1.acctnum, cvd1.assettype, cvd1.deliverymthd, cvd1.assetid, cvd1.assetname, cvd1.entrypointcount)
    WHEN MATCHED THEN
    UPDATE
    SET ENTRYPOINTASSETS.assetname = cvd1.assetname;
    Edited by: Nagaraja Akkivalli on Aug 9, 2011 6:07 PM

    Tried it. No luck. Facing the same problem.
    MERGE INTO SUMMARYTABLE
    USING
    (SELECT
    LAST_DAY(TRUNC(to_timestamp(oa.reqdate, 'yyyymmddhh24:mi:ss.ff4'))) as activity_month,
            oa.acctnum as acctnum,
            l.lkpvalue as assettype,
            LOWER(TRIM(oa.disseminationmthd)) as deliverymthd,
            epa.assetid as assetid,
            epa.assetname as assetname,
            count(1) as entrypointcount
       FROM ods_action oa, ods_asset epa, ods_lookupdata l
      WHERE
         (lv_summm_type_indicator  = c_summaryType_fullLoad
         AND  ( get_date_timestamp(oa.reqdate) BETWEEN :sum_startdate AND :sum_enddate
         AND   oa.uploaddatetime BETWEEN :partitioned_start_date AND :partitioned_end_date
         OR (lv_summm_type_indicator = c_summaryType_incrementLoad
                    AND oa.uploaddatetime BETWEEN :sum_startdate AND :sum_enddate )
        AND oa.assetkey IS NOT NULL
        AND oa.acctnum is not null
        AND UPPER(TRIM(oa.assettype)) IN ('NL','WS','AL')
        AND l.lkpid = epa.assettypeid
        AND UPPER(TRIM(oa.disseminationmthd)) IN ('RSS','PCAST', 'PODCAST', 'EMAIL','ED', 'WID')
        AND epa.assetkey = oa.assetkey
        AND epa.assetid <> 0
      GROUP BY
      LAST_DAY(TRUNC(to_timestamp(oa.reqdate, 'yyyymmddhh24:mi:ss.ff4'))),
               oa.acctnum,
               l.lkpvalue,
               LOWER(TRIM(oa.disseminationmthd)),
               epa.assetid,
               epa.assetname
           ) cvd1
    ON
       (SUMMARYTABLE.activity_month = cvd1.activity_month
        AND SUMMARYTABLE.acctnum = cvd1.acctnum
        AND SUMMARYTABLE.assettype = cvd1.assettype
        AND UPPER(TRIM(SUMMARYTABLE.deliverymthd)) = UPPER(TRIM(cvd1.deliverymthd))
        AND SUMMARYTABLE.assetid = cvd1.assetid)
    WHEN NOT MATCHED THEN
    INSERT (activity_month, acctnum, assettype, deliverymthd, assetid, assetname, entrypointcount)
    VALUES (cvd1.activity_month, cvd1.acctnum, cvd1.assettype, cvd1.deliverymthd, cvd1.assetid, cvd1.assetname, cvd1.entrypointcount)
    WHEN MATCHED THEN
    UPDATE
    SET SUMMARYTABLE.assetname = cvd1.assetname,
        SUMMARYTABLE.entrypointcount =
         CASE WHEN NVL(lv_summm_type_indicator,c_summaryType_incrementLoad) = c_summaryType_fullLoad THEN cvd1.entrypointcount
         ELSE SUMMARYTABLE.entrypointcount + cvd1.entrypointcount END;If I comment any one of the below piece of code present in merge then merge is working fine. If I retain both code then getting error.
    lv_summm_type_indicator is a variable caclualted @ run time to check type of summarization and c_summaryType_incrementLoad is a constant value stored @ the top of the procedure. PLease let me now where I am going wrong.
         (lv_summm_type_indicator  = c_summaryType_fullLoad
         AND  ( get_date_timestamp(oa.reqdate) BETWEEN :sum_startdate AND :sum_enddate
         AND   oa.uploaddatetime BETWEEN :partitioned_start_date AND :partitioned_end_date
         ))OR
    OR (lv_summm_type_indicator = c_summaryType_incrementLoad
                    AND oa.uploaddatetime BETWEEN :sum_startdate AND :sum_enddate )Edited by: Nagaraja Akkivalli on Aug 24, 2011 5:13 PM
    Edited by: Nagaraja Akkivalli on Aug 24, 2011 5:16 PM

  • Error in timestamp query

    select ENO from emp versions between timestamp
    to_timestamp(to_char('17-JUL-09 12.05.03.000000 PM','dd-mm-yyyy hh24:mi:ss'),'dd-mm-yyyy hh24:mi:ss')
    and systimestamp
    The above query is throwing the below error.
    ORA-01722: invalid number
    PLease clarify....
    thanks,
    vinodh

    Thanks Sean for correcting me (again) :) I kinda overlooked it.... :(
    And Oracle was kind enough to ignore the error for me: :D
    SQL> SELECT TO_TIMESTAMP ('17-JUL-09 02.45.23.848000 PM',
      2                       'dd-mm-yyyy hh:mi:ss.ff6 pm'
      3                      )
      4    FROM DUAL
      5  /
    TO_TIMESTAMP('17-JUL-0902.45.23.848000PM','DD-MM-YYYYHH:MI:SS.FF6PM')
    17-JUL-09 02.45.23.848000000 PM
    1 row selected.
    SQL> SELECT TO_TIMESTAMP ('17-JUL-2009 02.45.23.848000 PM',
      2                       'dd-mon-yyyy hh12.mi.ss.ff6 PM'
      3                      )
      4    FROM DUAL
      5  /
    TO_TIMESTAMP('17-JUL-200902.45.23.848000PM','DD-MON-YYYYHH12.MI.SS.FF6PM')
    17-JUL-09 02.45.23.848000000 PM
    1 row selected.
    SQL> Regards,
    Jo

  • Error in Flashback Query

    while trying to execute flashback query i am getting an error
    CREATE TABLE flashback_query_test (
    id NUMBER(10)
    desc flashback_query_test
    SELECT current_scn, TO_CHAR(SYSTIMESTAMP, 'YYYY-MM-DD HH24:MI:SS') FROM v$database;
    INSERT INTO flashback_query_test (id) VALUES (1)
    COMMIT;
    SELECT COUNT(*) FROM flashback_query_test
    SQL> SELECT COUNT(*)
    2 FROM
    3 flashback_query_test
    4 AS OF
    5 TIMESTAMP TO_TIMESTAMP('2010-02-01 16:58:43', 'YYYY-MM-DD HH24:MI:SS');
    flashback_query_test
    ERROR at line 3:
    ORA-01466: unable to read data - table definition has changed
    pls help me out!................

    The SCN to TIMESTAMP conversion only has a granularity of approximately 3 seconds if I remember correctly. So my guess is that you are getting this error because you are trying to flashback to the same time that the table was created putting you in that 3 second window of SCN to TIMESTAMP ambiguity.
    You can see this ambiguity by using the SCN_TO_TIMESTAMP or TIMESTAMP_TO_SCN functions as shown below:
    SQL> COLUMN TSTAMP NEW_VALUE T;
    SQL> SELECT CURRENT_SCN, TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DD HH24:MI:SS') AS TSTAMP FROM V$DATABASE;
             CURRENT_SCN TSTAMP
           9080346377361 2010-02-01 07:13:12
    SQL> SELECT TIMESTAMP_TO_SCN(TO_TIMESTAMP('&T','YYYY-MM-DD HH24:MI:SS')) FROM DUAL;
    old   1: SELECT TIMESTAMP_TO_SCN(TO_TIMESTAMP('&T','YYYY-MM-DD HH24:MI:SS')) FROM DUAL
    new   1: SELECT TIMESTAMP_TO_SCN(TO_TIMESTAMP('2010-02-01 07:13:12','YYYY-MM-DD HH24:MI:SS')) FROM DUAL
    TIMESTAMP_TO_SCN(TO_TIMESTAMP('2010-02-0107:13:12','YYYY-MM-DDHH24:MI:SS'))
                                                                  9080346377360See how the SCNs are different?
    Now if you allow some time to pass between table creation and INSERT, you should be able to get the results as shown:
    SQL> CREATE TABLE FLASHBACK_QUERY_TEST(id NUMBER(10));
    Table created.
    SQL> EXEC DBMS_LOCK.SLEEP(3);
    PL/SQL procedure successfully completed.
    SQL> COLUMN TSTAMP NEW_VALUE T;
    SQL> SELECT CURRENT_SCN, TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DD HH24:MI:SS') AS TSTAMP FROM V$DATABASE;
             CURRENT_SCN TSTAMP
           9080346377430 2010-02-01 07:15:30
    SQL> INSERT INTO FLASHBACK_QUERY_TEST(ID) VALUES(1);
    1 row created.
    SQL> COMMIT;
    Commit complete.
    SQL> SELECT COUNT(*) FROM FLASHBACK_QUERY_TEST;
                COUNT(*)
                       1
    SQL> SELECT COUNT(*) FROM FLASHBACK_QUERY_TEST AS OF TIMESTAMP TO_TIMESTAMP('&T','YYYY-MM-DD HH24:MI:SS');
    old   1: SELECT COUNT(*) FROM FLASHBACK_QUERY_TEST AS OF TIMESTAMP TO_TIMESTAMP('&T','YYYY-MM-DD HH24:MI:SS')
    new   1: SELECT COUNT(*) FROM FLASHBACK_QUERY_TEST AS OF TIMESTAMP TO_TIMESTAMP('2010-02-01 07:15:30','YYYY-MM-DD HH24:MI:SS')
                COUNT(*)
                       0HTH!

  • Trouble with TO_TIMESTAMP converting from Java Date

    I have a Jelly script that initializes my database. I have some "TIMESTAMP" columns that I want to set to the current time. I set a variable at the top of the script to the current time, so I can use that throughout the script.
    The resulting excerpt from my "INSERT" statement looks like this:
    ... VALUES (1, TO_TIMESTAMP('Wed Aug 30 09:21:02 PDT 2006', 'DY MON DD HH:MI:SS TZD YYYY'))
    This complains: "date format not recognized"
    I got these format descriptors from the Oracle documentation. I made sure that all of them had "Yes" in the "Specify in TO_* datetime functions?" column. I then found another page that describes "TO_TIMESTAMP", and it listed all of these except for the "TZD".
    Is it possible to use a date/time value in that form (the example shown here) to insert into a timestamp column? If necessary, I could convert it to a different form, but it's somewhat awkward to do that in a Jelly script.

    this query is perefectly working for me.
    INSERT INTO ZIPCODE ( ZIPCD_ID, VER, CREATED_BY, CREATED_DT, UPDATED_BY,UPDATED_DT, CTY, CTY_ABBR, ST, ZIP_CD, ZIPCD_EXT )
    VALUES ( 311929, 1, 'DC',
    TO_TIMESTAMP('8/29/2006 3:09:53.000000 PM','fmMMfm/fmDDfm/YYYY fmHH12fm:MI:SS.FF AM'),'DC',
    TO_TIMESTAMP('8/29/2006 3:09:53.000000 PM','fmMMfm/fmDDfm/YYYY fmHH12fm:MI:SS.FF AM')
    , 'FS', NULL, 'GA', '31314', NULL);
    my version is Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bi

  • Glass Pane( preventUserInput when user clicks on Search button in af:query)

    Hi,
    We are using glass pane implementation on a search screen.
    When I click on Search button in af:query component (having selectInputDate (Date Picker) components)., glass pane is firing correctly,
    but second time when I am trying to select date using Date Picker (and Change the Month), glass pane is fired (entering into handleBusyState function) and calendar popup is not opening.
    I folled the below article for implementation.
    url: http://www.oracle.com/technetwork/developer-tools/adf/learnmore/27-long-running-queries-169166.pdf used for glassPane implementation.
    Can any one help me for this issue.

    Hi am using the following code (javascript) -- Jdev(11.1.1.3)
    function preventUserInput(evt){   
    var eventSource = evt.getSource();
    var popup1 = eventSource.findComponent("showGlassPanePopup");
    if (popup1 != null){
    AdfPage.PAGE.addBusyStateListener(popup1,handleBusyState);
    evt.preventUserInput();
    //JavaScript call back handler
    function handleBusyState(evt){ 
    var popup = AdfPage.PAGE.findComponentByAbsoluteId('r3:0:r1:0:showGlassPanePopup');
    if(popup!=null){
    if (evt.isBusy()){
    popup.show();
    } else if (popup.isPopupVisible()) {
    popup.hide();
    AdfPage.PAGE.removeBusyStateListener(popup, handleBusyState);
    ... End of Code..
    This line .. (popup.isPopupVisible()) removes the Popup , if popup is visible...
    If u want the view am using..
    SELECT EMPNO , DEPTNO , HIREDATE FROM EMPLOYEE (sample Application i have created), created a view criteria for this..
    ( (EMPNO = :empNum ) AND (DEPTNO = :deptNum ) AND (TO_CHAR( TO_TIMESTAMP(HIREDATE), 'yyyy-mm-dd hh24:mi:ss.ff') = :hireDts ) ) (View Criteria)
    .. <af:clientListener method="enforcePreventUserInput" type="query"/> (added for af:query)
    Popup Used: <af:popup id="showGlassPanePopup" contentDelivery="immediate">
    <af:dialog id="d2" type="none" closeIconVisible="false">
    <af:panelGroupLayout id="panelGroupLayout1" layout="vertical">
    <af:outputText value="Processing......Please Wait.." id="ot97"/>
    </af:panelGroupLayout>
    </af:dialog>
    </af:popup>
    1. When i click search for first time.. it is showing like -- Processing .. Please Wait'
    2. When i click select Date picker it is show -- Processing .. Please Wait'
    and show a calender popup window.. If we change the month ... it will again show like -- Processing .. Please Wait'
    and it will not open calender window.
    Please Help me on this..Am facing trouble due to this.
    Thanks in Advance.
    Edited by: user10115793 on Nov 15, 2011 12:58 AM

  • Flashback query works, but not flashback versions query

    This is a test database (Oracle10g 10.1.0.5), not in archivelog mode. I deleted one row 2 hours ago. I can still use flashback query:
    select * from tm_instances as of timestamp to_timestamp('STARTTIME_HERE') to view this row. But I can't use the following flashback versions query:
    SELECT versions_startscn, versions_starttime,
    versions_endscn, versions_endtime,
    versions_xid, versions_operation from tm_instances VERSIONS BETWEEN TIMESTAMP to_timestamp('STARTTIME_HERE') and MAXVALUE
    It gave the following error:
    ORA-30052: invalid lower limit snapshot expression
    So I guess flashback query works better than flashback versions query?
    undo_retention is set to 900 by default here.
    Thanks,
    Hai

    currently function returns all mydate rows, i just want mydesired date rowsCheck if there is a column in the table with the same name as the function parameter. It's the most probable reason of such DML operations behaviour in PL/SQL procedures and function.
    Rgds.

  • Get more column in Group by query....

    select np.netting_profile, max(np.effective_date) from netting_profile np
    where np.profile_run_time_date=to_timestamp('2010-11-18 18:00:00','yyyy-MM-dd HH24:MI:SS') and
    np.effective_date <= to_timestamp('2010-11-26 00:00:00','yyyy-MM-dd HH24:MI:SS')
    GROUP BY np.netting_profile
    In above query i need to get Profile_version. but i dont want to GROUP BY profile_version.....
    Multi profile_version are there so i am getting duplicate value.......
    Table structure
    Netting_Profile Profile_Version Effective_Date Profile_run_time_date
    P1 V1 2010-11-18 00:00:00 2010-11-18 18:00:00
    P1 V2 2010-11-26 00:00:00 2010-11-18 18:00:00
    P1 V3 2010-11-28 00:00:00 2010-11-18 18:00:00
    C1 V1 2010-11-20 00:00:00 2010-11-18 18:00:00
    C2 V2 2010-11-26 00:00:00 2010-11-18 18:00:00
    Expected result
    Netting_Profile Profile_Version Max(Effective_Date)
    P1 V2 2010-11-26 00:00:00
    C1 V2 2010-11-26 00:00:00
    here not able to get Profile_Version
    if required what is the solution.........plz help me..........
    Edited by: user1141807 on Nov 28, 2010 11:27 PM

    SQL> SELECT deptno,max(sal)
      2  FROM emp
      3  GROUP BY deptno;
        DEPTNO   MAX(SAL)
            30       2850
            20       3000
            10       5000
    SQL>
    SQL> --Now I want to show ename column. Example of co-related subquery.
    SQL> --Search documentation for more understanding and example.
    SQL> --http://download.oracle.com/docs/cd/E11882_01/server.112/e17118/queries007.htm#i2067858
    SQL> SELECT ename,deptno,sal
      2  FROM emp e1
      3  WHERE (deptno,sal) IN
      4       (SELECT deptno,max(sal)
      5        FROM emp e2
      6        WHERE e1.deptno=e2.deptno
      7        GROUP BY deptno
      8        );
    ENAME          DEPTNO        SAL
    BLAKE              30       2850
    SCOTT              20       3000
    FORD               20       3000
    KING               10       5000
    SQL> http://download.oracle.com/docs/cd/E11882_01/server.112/e17118/queries007.htm#i2067858
    SQL> --Use Of analytical function.
    SQL> SELECT ename,deptno,sal
      2  FROM (SELECT ename,deptno,sal
      3        ,RANK() OVER ( PARTITION BY deptno ORDER BY sal desc) rn
      4         FROM emp
      5         )
      6  WHERE rn<2;
    ENAME          DEPTNO        SAL
    KING               10       5000
    SCOTT              20       3000
    FORD               20       3000
    BLAKE              30       2850
    SQL> http://download.oracle.com/docs/cd/E11882_01/server.112/e16579/analysis.htm#i1006229

  • XML QUERY HELP NEEDED

    Hi,
    Need help in writing a query.
    SQL> SELECT xmlelement("P",xmlforest(P.process_id AS Ppid),
      2   xmlagg(xmlelement("PI",XMLFOREST( PI.question_id AS PIqid,
      3   PI.process_id AS PIpid,
      4   PI.innertext AS PItext),
      5   xmlagg(Xmlelement("PO",xmlforest( PO.option_id AS POoid,
      6   PO.question_id AS POqid,
      7   PO.process_id AS popid
      8   ))
      9  ORDER BY PO.option_id))
    10     ORDER BY PI.question_id ) )
    11     FROM liveProcess_ec P
    12  INNER JOIN vw_liveProcessItem_Sim_v6 PI
    13       ON P.process_id = PI.process_id
    14  LEFT OUTER JOIN vw_liveProcessOption_Sim_v6 PO
    15       ON PI.question_id = PO.question_id
    16  AND PI.process_id      = PO.process_id
    17    WHERE p.process_id   =450
    18  GROUP BY p.process_id,PI.question_id,PI.process_id,PI.innertext
    19    ORDER BY p.process_id;
    SELECT xmlelement("P",xmlforest(P.process_id AS Ppid),
    ERROR at line 1:
    ORA-00937: not a single-group group functionThanks in advance

    Hi,
    Here below are the create table scripts along with sample data and expected output.
    CREATE TABLE VW_LIVEPROCESSOPTION_SIM_v6
    ( "OPTION_ID" NUMBER,
    "QUESTION_ID" NUMBER(10,0),
    "PROCESS_ID" NUMBER(10,0),
    "OPT_INNERTEXT" VARCHAR2(200 CHAR),
    "OPT_LINKFROM" VARCHAR2(20 CHAR),
    "OPT_LINKTO" VARCHAR2(20 CHAR),
    "LIBQUESTION_IDFK" NUMBER,
    "LIBOPTION_IDFK" NUMBER
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (1,2,450,'Yes',null,'5',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (1,3,450,'Yes',null,'5',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (1,5,450,'Yes',null,'6',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (1,6,450,'Yes',null,'7',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (1,8,450,'Block All',null,'9',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (1,9,450,'Yes',null,'10',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (1,11,450,'Yes',null,'12',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (1,12,450,'Yes',null,'13',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (1,14,450,'Yes',null,'16',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (2,2,450,'No',null,'3',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (2,3,450,'No',null,'4',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (2,5,450,'No',null,'8',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (2,6,450,'No',null,'8',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (2,8,450,'Standard',null,'11',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (2,9,450,'No',null,'11',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (2,11,450,'No',null,'14',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (2,12,450,'No',null,'14',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (2,14,450,'No',null,'15',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (3,8,450,'Disabled',null,'12',null,null);
    Insert into VW_LIVEPROCESSOPTION_SIM_v6(OPTION_ID,QUESTION_ID,PROCESS_ID,OPT_INNERTEXT,OPT_LINKFROM,OPT_LINKTO,LIBQUESTION_IDFK,LIBOPTION_IDFK) values (4,8,450,'User Defined',null,'12',null,null);
    REATE TABLE "VW_LIVEPROCESSITEM_SIM_v6"
    ( "QUESTION_ID" NUMBER(10,0),
    "PROCESS_ID" NUMBER(10,0),
    "INNERTEXT" VARCHAR2(200 CHAR),
    "ITEMTYPE" VARCHAR2(50 CHAR),
    "LINKFROM" VARCHAR2(500 CHAR),
    "LINKTO" VARCHAR2(500 CHAR),
    "ASSOCIATED" VARCHAR2(200 CHAR),
    "CONTENT_ID" NUMBER,
    "EXITPOINT1_ID" NUMBER(10,0),
    "EXITPOINT2_ID" NUMBER(10,0),
    "EXITPOINT3_ID" NUMBER(10,0),
    "RESOLVEIDENTIFIER" VARCHAR2(40 CHAR),
    "LIBQUESTION_IDFK" NUMBER(10,0),
    "FOLLOWONCALL" NUMBER(1,0),
    "USERINPUT" VARCHAR2(200 CHAR),
    "ISLOCKED" NUMBER(1,0),
    "PREVIOUSANSWER" NUMBER(1,0),
    "VISIBLETOAGENT" NUMBER(1,0),
    "RETRYATTEMPT" NUMBER(10,0),
    "TAGS" VARCHAR2(50 BYTE)
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (1,450,'CBB1015 - Router Firewall Settinngs Process','Title',null,'2',null,null,null,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (2,450,'Is the customers PC Firewall turned off?','Question','1','2.2,2.1',null,null,null,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (3,450,'Advise the customer to turn off the PC Firewall in order to continue. Has this been done?','Question','2.2','3.2,3.1',null,278,null,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (4,450,'Advise the customer the PC Firewall must be switched off before this process????','ExitPoint','3.2',null,null,null,14,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (5,450,'Is the customer able to access the internet now?','Question','3.1,2.1','5.2,5.1',null,null,null,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (6,450,'Is the customer having a problem with a specific website?','Question','5.1','6.2,6.1',null,null,null,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (7,450,'1536: CBB1008 - Browser Setup and Daignostics','SubProcess','6.1',null,'1536-1-0',null,null,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (8,450,'What is the security level on the CPE Management page?','Question','6.2,5.2','8.4,8.3,8.2,8.1',null,279,null,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (9,450,'Change the security level to Standard. Does this resolve the customers issue?','Question','8.1','9.2,9.1',null,280,null,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (10,450,'Issue Resolved','ExitPoint','9.1',null,null,null,1,6,122,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (11,450,'Change the security level to Disabled. Is the customer able to browse the internet?','Question','9.2,8.2','11.2,11.1',null,281,null,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (12,450,'Change the security level to Standard. Is the customer able to browse the internet now?','Question','11.1,8.3,8.4','12.2,12.1',null,283,null,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (13,450,'Issue Resolved','ExitPoint','12.1',null,null,null,1,6,123,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (14,450,'Ask the customer to perform a master reset. Does this resolve their issue?','Question','12.2,11.2','14.2,14.1',null,282,null,null,null,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (15,450,'Faulty CPE','ExitPoint','14.2',null,null,null,1,6,124,null,null,null,null,null,null,null,null,null);
    Insert into VW_LIVEPROCESSITEM_SIM_v6 (QUESTION_ID,PROCESS_ID,INNERTEXT,ITEMTYPE,LINKFROM,LINKTO,ASSOCIATED,CONTENT_ID,EXITPOINT1_ID,EXITPOINT2_ID,EXITPOINT3_ID,RESOLVEIDENTIFIER,LIBQUESTION_IDFK,FOLLOWONCALL,USERINPUT,ISLOCKED,PREVIOUSANSWER,VISIBLETOAGENT,RETRYATTEMPT,TAGS) values (16,450,'Issue Resolved','ExitPoint','14.1',null,null,null,1,6,123,null,null,null,null,null,null,null,null,null);
    CREATE TABLE "LIVEPROCESS_EC_V"
    ( "PROCESS_ID" NUMBER(10,0),
    "USER_ID" NUMBER(10,0),
    "CREATED" TIMESTAMP (6)
    Insert into LIVEPROCESS_EC (PROCESS_ID,USER_ID,CREATED) values (450,7460,to_timestamp('21-APR-08 09.34.41.000000000 AM','DD-MON-RR HH.MI.SS.FF AM'));Expected Output
    <P>
      <Ppid>450</Ppid>
      <Pn>CBB1015 - Router Firewall Settinngs Process</Pn>
      <Pg>9</Pg>
      <Pl>0</Pl>
      <Pb>5</Pb>
      <qcount>100</qcount>
      <ocount>200</ocount>
      <PI>
        <PIqid>1</PIqid>
        <PIpid>450</PIpid>
        <PIpx>366</PIpx>
        <PIpy>-516</PIpy>
        <PItext>CBB1015 - Router Firewall Settinngs Process</PItext>
        <PItype>Title</PItype>
        <PIto>2</PIto>
        <PO />
      </PI>
      <PI>
        <PIqid>2</PIqid>
        <PIpid>450</PIpid>
        <PIpx>366</PIpx>
        <PIpy>-437</PIpy>
        <PItext>Is the customers PC Firewall turned off?</PItext>
        <PItype>Question</PItype>
        <PIfrom>1</PIfrom>
        <PIto>2.2,2.1</PIto>
        <PO>
          <POoid>1</POoid>
          <POqid>2</POqid>
          <popid>450</popid>
          <POpx>-50</POpx>
          <POpy>70</POpy>
          <POtext>Yes</POtext>
          <POto>5</POto>
        </PO>
        <PO>
          <POoid>2</POoid>
          <POqid>2</POqid>
          <popid>450</popid>
          <POpx>50</POpx>
          <POpy>70</POpy>
          <POtext>No</POtext>
          <POto>3</POto>
        </PO>
      </PI>
      <PI>
        <PIqid>3</PIqid>
        <PIpid>450</PIpid>
        <PIpx>468</PIpx>
        <PIpy>-344</PIpy>
        <PItext>Advise the customer to turn off the PC Firewall in order to continue. Has this been done?</PItext>
        <PItype>Question</PItype>
        <PIfrom>2.2</PIfrom>
        <PIto>3.2,3.1</PIto>
        <PIc>278</PIc>
        <PO>
          <POoid>1</POoid>
          <POqid>3</POqid>
          <popid>450</popid>
          <POpx>-50</POpx>
          <POpy>70</POpy>
          <POtext>Yes</POtext>
          <POto>5</POto>
        </PO>
        <PO>
          <POoid>2</POoid>
          <POqid>3</POqid>
          <popid>450</popid>
          <POpx>50</POpx>
          <POpy>70</POpy>
          <POtext>No</POtext>
          <POto>4</POto>
        </PO>
      </PI>
      <PI>
        <PIqid>4</PIqid>
        <PIpid>450</PIpid>
        <PIpx>571</PIpx>
        <PIpy>-250</PIpy>
        <PItext>Advise the customer the PC Firewall must be switched off before this process????</PItext>
        <PItype>ExitPoint</PItype>
        <PIfrom>3.2</PIfrom>
        <PIe1>14</PIe1>
        <PO />
      </PI>
      <PI>
        <PIqid>5</PIqid>
        <PIpid>450</PIpid>
        <PIpx>374</PIpx>
        <PIpy>-240</PIpy>
        <PItext>Is the customer able to access the internet now?</PItext>
        <PItype>Question</PItype>
        <PIfrom>3.1,2.1</PIfrom>
        <PIto>5.2,5.1</PIto>
        <PO>
          <POoid>1</POoid>
          <POqid>5</POqid>
          <popid>450</popid>
          <POpx>-50</POpx>
          <POpy>70</POpy>
          <POtext>Yes</POtext>
          <POto>6</POto>
        </PO>
        <PO>
          <POoid>2</POoid>
          <POqid>5</POqid>
          <popid>450</popid>
          <POpx>50</POpx>
          <POpy>70</POpy>
          <POtext>No</POtext>
          <POto>8</POto>
        </PO>
      </PI>
      <PI>
        <PIqid>6</PIqid>
        <PIpid>450</PIpid>
        <PIpx>322</PIpx>
        <PIpy>-141</PIpy>
        <PItext>Is the customer having a problem with a specific website?</PItext>
        <PItype>Question</PItype>
        <PIfrom>5.1</PIfrom>
        <PIto>6.2,6.1</PIto>
        <PO>
          <POoid>1</POoid>
          <POqid>6</POqid>
          <popid>450</popid>
          <POpx>-50</POpx>
          <POpy>70</POpy>
          <POtext>Yes</POtext>
          <POto>7</POto>
        </PO>
        <PO>
          <POoid>2</POoid>
          <POqid>6</POqid>
          <popid>450</popid>
          <POpx>50</POpx>
          <POpy>70</POpy>
          <POtext>No</POtext>
          <POto>8</POto>
        </PO>
      </PI>
      <PI>
        <PIqid>7</PIqid>
        <PIpid>450</PIpid>
        <PIpx>128</PIpx>
        <PIpy>-36</PIpy>
        <PItext>1536: CBB1008 - Browser Setup and Daignostics</PItext>
        <PItype>SubProcess</PItype>
        <PIfrom>6.1</PIfrom>
        <PIas>1536-1-0</PIas>
        <PO />
      </PI>
      <PI>
        <PIqid>8</PIqid>
        <PIpid>450</PIpid>
        <PIpx>461</PIpx>
        <PIpy>-43</PIpy>
        <PItext>What is the security level on the CPE Management page?</PItext>
        <PItype>Question</PItype>
        <PIfrom>6.2,5.2</PIfrom>
        <PIto>8.4,8.3,8.2,8.1</PIto>
        <PIc>279</PIc>
        <PO>
          <POoid>1</POoid>
          <POqid>8</POqid>
          <popid>450</popid>
          <POpx>-112</POpx>
          <POpy>89</POpy>
          <POtext>Block All</POtext>
          <POto>9</POto>
        </PO>
        <PO>
          <POoid>2</POoid>
          <POqid>8</POqid>
          <popid>450</popid>
          <POpx>50</POpx>
          <POpy>70</POpy>
          <POtext>Standard</POtext>
          <POto>11</POto>
        </PO>
        <PO>
          <POoid>3</POoid>
          <POqid>8</POqid>
          <popid>450</popid>
          <POpx>83</POpx>
          <POpy>116</POpy>
          <POtext>Disabled</POtext>
          <POto>12</POto>
        </PO>
        <PO>
          <POoid>4</POoid>
          <POqid>8</POqid>
          <popid>450</popid>
          <POpx>-14</POpx>
          <POpy>94</POpy>
          <POtext>User Defined</POtext>
          <POto>12</POto>
        </PO>
      </PI>
      <PI>
        <PIqid>9</PIqid>
        <PIpid>450</PIpid>
        <PIpx>237</PIpx>
        <PIpy>76</PIpy>
        <PItext>Change the security level to Standard. Does this resolve the customers issue?</PItext>
        <PItype>Question</PItype>
        <PIfrom>8.1</PIfrom>
        <PIto>9.2,9.1</PIto>
        <PIc>280</PIc>
        <PO>
          <POoid>1</POoid>
          <POqid>9</POqid>
          <popid>450</popid>
          <POpx>-50</POpx>
          <POpy>70</POpy>
          <POtext>Yes</POtext>
          <POto>10</POto>
        </PO>
        <PO>
          <POoid>2</POoid>
          <POqid>9</POqid>
          <popid>450</popid>
          <POpx>69</POpx>
          <POpy>73</POpy>
          <POtext>No</POtext>
          <POto>11</POto>
        </PO>
      </PI>
      <PI>
        <PIqid>10</PIqid>
        <PIpid>450</PIpid>
        <PIpx>158</PIpx>
        <PIpy>185</PIpy>
        <PItext>Issue Resolved</PItext>
        <PItype>ExitPoint</PItype>
        <PIfrom>9.1</PIfrom>
        <PIe1>1</PIe1>
        <PIe2>6</PIe2>
        <PIe3>122</PIe3>
        <PO />
      </PI>
      <PI>
        <PIqid>11</PIqid>
        <PIpid>450</PIpid>
        <PIpx>821</PIpx>
        <PIpy>144</PIpy>
        <PItext>Change the security level to Disabled. Is the customer able to browse the internet?</PItext>
        <PItype>Question</PItype>
        <PIfrom>9.2,8.2</PIfrom>
        <PIto>11.2,11.1</PIto>
        <PIc>281</PIc>
        <PO>
          <POoid>1</POoid>
          <POqid>11</POqid>
          <popid>450</popid>
          <POpx>-50</POpx>
          <POpy>70</POpy>
          <POtext>Yes</POtext>
          <POto>12</POto>
        </PO>
        <PO>
          <POoid>2</POoid>
          <POqid>11</POqid>
          <popid>450</popid>
          <POpx>50</POpx>
          <POpy>70</POpy>
          <POtext>No</POtext>
          <POto>14</POto>
        </PO>
      </PI>
      <PI>
        <PIqid>12</PIqid>
        <PIpid>450</PIpid>
        <PIpx>474</PIpx>
        <PIpy>186</PIpy>
        <PItext>Change the security level to Standard. Is the customer able to browse the internet now?</PItext>
        <PItype>Question</PItype>
        <PIfrom>11.1,8.3,8.4</PIfrom>
        <PIto>12.2,12.1</PIto>
        <PIc>283</PIc>
        <PO>
          <POoid>1</POoid>
          <POqid>12</POqid>
          <popid>450</popid>
          <POpx>-50</POpx>
          <POpy>70</POpy>
          <POtext>Yes</POtext>
          <POto>13</POto>
        </PO>
        <PO>
          <POoid>2</POoid>
          <POqid>12</POqid>
          <popid>450</popid>
          <POpx>50</POpx>
          <POpy>70</POpy>
          <POtext>No</POtext>
          <POto>14</POto>
        </PO>
      </PI>
      <PI>
        <PIqid>13</PIqid>
        <PIpid>450</PIpid>
        <PIpx>322</PIpx>
        <PIpy>278</PIpy>
        <PItext>Issue Resolved</PItext>
        <PItype>ExitPoint</PItype>
        <PIfrom>12.1</PIfrom>
        <PIe1>1</PIe1>
        <PIe2>6</PIe2>
        <PIe3>123</PIe3>
        <PO />
      </PI>
      <PI>
        <PIqid>14</PIqid>
        <PIpid>450</PIpid>
        <PIpx>645</PIpx>
        <PIpy>327</PIpy>
        <PItext>Ask the customer to perform a master reset. Does this resolve their issue?</PItext>
        <PItype>Question</PItype>
        <PIfrom>12.2,11.2</PIfrom>
        <PIto>14.2,14.1</PIto>
        <PIc>282</PIc>
        <PO>
          <POoid>1</POoid>
          <POqid>14</POqid>
          <popid>450</popid>
          <POpx>-50</POpx>
          <POpy>70</POpy>
          <POtext>Yes</POtext>
          <POto>16</POto>
        </PO>
        <PO>
          <POoid>2</POoid>
          <POqid>14</POqid>
          <popid>450</popid>
          <POpx>50</POpx>
          <POpy>70</POpy>
          <POtext>No</POtext>
          <POto>15</POto>
        </PO>
      </PI>
      <PI>
        <PIqid>15</PIqid>
        <PIpid>450</PIpid>
        <PIpx>768</PIpx>
        <PIpy>435</PIpy>
        <PItext>Faulty CPE</PItext>
        <PItype>ExitPoint</PItype>
        <PIfrom>14.2</PIfrom>
        <PIe1>1</PIe1>
        <PIe2>6</PIe2>
        <PIe3>124</PIe3>
        <PO />
      </PI>
      <PI>
        <PIqid>16</PIqid>
        <PIpid>450</PIpid>
        <PIpx>479</PIpx>
        <PIpy>420</PIpy>
        <PItext>Issue Resolved</PItext>
        <PItype>ExitPoint</PItype>
        <PIfrom>14.1</PIfrom>
        <PIe1>1</PIe1>
        <PIe2>6</PIe2>
        <PIe3>123</PIe3>
        <PO />
      </PI>
    </P>Thanks in advance.

  • Giving START WITH dynamically in a query

    Hi,
    How do you specify the value in START WITH dynamically during runtime.
    For example please consider the bewlo scenario:
    CREATE TABLE ISCT
    ITEM_NO VARCHAR2(15 CHAR) NOT NULL,
    ITEM_TYPE VARCHAR2(3 CHAR) NOT NULL,
    ITEM_TYPE_SCO VARCHAR2(3 CHAR) NOT NULL,
    ITEM_NO_SCO VARCHAR2(15 CHAR) NOT NULL,
    ARTSAL_SEQ_PRIO NUMBER(3) NOT NULL,
    ART_SCO_QTY NUMBER(6,3) NOT NULL,
    ITEM_SEQ_PRIO NUMBER(3),
    PCKL_SEQ_PRIO NUMBER(3),
    REG_DATE DATE NOT NULL,
    UPD_DATE DATE NOT NULL,
    DELETE_DATE DATE,
    USER_NO_CHG VARCHAR2(7 CHAR) NOT NULL
    CREATE TABLE ICONT
    ITEM_TYPE VARCHAR2(3 CHAR) NOT NULL,
    ITEM_NO VARCHAR2(15 CHAR) NOT NULL,
    ITEM_TYPE_CHILD VARCHAR2(3 CHAR) NOT NULL,
    ITEM_NO_CHILD VARCHAR2(15 CHAR) NOT NULL,
    ITEM_QTY_CHILD NUMBER(5) NOT NULL,
    REG_DATE DATE NOT NULL,
    UPD_DATE DATE NOT NULL,
    DELETE_DATE DATE,
    II_DATE DATE NOT NULL,
    IU_DATE DATE NOT NULL,
    SORT_NO NUMBER(5)
    Now inserting rows:
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('15795', 'CCI', 'SCI', '00245905', 25,
    1, NULL, NULL, TO_DATE('10/03/2009 15:40:01', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('00245781', 'SCI', 'SCI', '00245905', 1,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('80067553', 'ART', 'SCI', '00245905', 2,
    2, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('84178910', 'ART', 'SCI', '00245905', 3,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('70132375', 'ART', 'SCI', '00245905', 4,
    8, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('30067555', 'ART', 'SCI', '00245905', 5,
    2, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('50067559', 'ART', 'SCI', '00245905', 6,
    5, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('14278710', 'ART', 'SCI', '00245905', 7,
    2, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('00130092', 'ART', 'SCI', '00245905', 8,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('10110159', 'ART', 'SCI', '00245905', 9,
    2, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('30124693', 'ART', 'SCI', '00245905', 10,
    4, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('80130093', 'ART', 'SCI', '00245905', 11,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('90110155', 'ART', 'SCI', '00245905', 12,
    2, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('60035916', 'ART', 'SCI', '00245905', 13,
    2, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('54249810', 'ART', 'SCI', '00245905', 14,
    2, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('14180110', 'ART', 'SCI', '00245905', 15,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('97872010', 'ART', 'SCI', '00245905', 16,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('34180010', 'ART', 'SCI', '00245905', 17,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('57871710', 'ART', 'SCI', '00245905', 18,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('40067588', 'ART', 'SCI', '00245905', 19,
    2, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('00067590', 'ART', 'SCI', '00245905', 20,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('80067586', 'ART', 'SCI', '00245905', 21,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('20145196', 'ART', 'SCI', '00245905', 22,
    2, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('00067585', 'ART', 'SCI', '00245905', 23,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('80124087', 'ART', 'SCI', '00245905', 24,
    1, NULL, 1, TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/03/2009 15:46:04', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1008920');
    Insert into isct
    (ITEM_NO, ITEM_TYPE, ITEM_TYPE_SCO, ITEM_NO_SCO, ARTSAL_SEQ_PRIO,
    ART_SCO_QTY, ITEM_SEQ_PRIO, PCKL_SEQ_PRIO, REG_DATE, UPD_DATE,
    DELETE_DATE, USER_NO_CHG)
    Values
    ('39809661', 'SPR', 'SCI', '00245781', 1,
    1, 1, 1, TO_DATE('10/04/2009 15:24:22', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('10/04/2009 15:24:22', 'MM/DD/YYYY HH24:MI:SS'),
    NULL, '1007193');
    Insert into icont (ITEM_TYPE,ITEM_NO,ITEM_TYPE_CHILD,ITEM_NO_CHILD,ITEM_QTY_CHILD,REG_DATE,UPD_DATE,DELETE_DATE,II_DATE,IU_DATE,SORT_NO) values ('SPR','39809661','ART','44178610',1,to_timestamp('23-FEB-07','DD-MON-RR HH24.MI.SSXFF'),to_timestamp('23-FEB-07','DD-MON-RR HH24.MI.SSXFF'),null,to_timestamp('15-NOV-07','DD-MON-RR HH24.MI.SSXFF'),to_timestamp('20-DEC-07','DD-MON-RR HH24.MI.SSXFF'),2);
    Insert into icont (ITEM_TYPE,ITEM_NO,ITEM_TYPE_CHILD,ITEM_NO_CHILD,ITEM_QTY_CHILD,REG_DATE,UPD_DATE,DELETE_DATE,II_DATE,IU_DATE,SORT_NO) values ('SPR','39809661','ART','70132375',1,to_timestamp('06-SEP-07','DD-MON-RR HH24.MI.SSXFF'),to_timestamp('06-SEP-07','DD-MON-RR HH24.MI.SSXFF'),null,to_timestamp('15-NOV-07','DD-MON-RR HH24.MI.SSXFF'),to_timestamp('20-DEC-07','DD-MON-RR HH24.MI.SSXFF'),4);
    Insert into icont (ITEM_TYPE,ITEM_NO,ITEM_TYPE_CHILD,ITEM_NO_CHILD,ITEM_QTY_CHILD,REG_DATE,UPD_DATE,DELETE_DATE,II_DATE,IU_DATE,SORT_NO) values ('SPR','39809661','ART','74249710',1,to_timestamp('23-FEB-07','DD-MON-RR HH24.MI.SSXFF'),to_timestamp('23-FEB-07','DD-MON-RR HH24.MI.SSXFF'),null,to_timestamp('15-NOV-07','DD-MON-RR HH24.MI.SSXFF'),to_timestamp('20-DEC-07','DD-MON-RR HH24.MI.SSXFF'),3);
    Insert into icont (ITEM_TYPE,ITEM_NO,ITEM_TYPE_CHILD,ITEM_NO_CHILD,ITEM_QTY_CHILD,REG_DATE,UPD_DATE,DELETE_DATE,II_DATE,IU_DATE,SORT_NO) values ('SPR','39809661','ART','80067553',1,to_timestamp('23-FEB-07','DD-MON-RR HH24.MI.SSXFF'),to_timestamp('23-FEB-07','DD-MON-RR HH24.MI.SSXFF'),null,to_timestamp('15-NOV-07','DD-MON-RR HH24.MI.SSXFF'),to_timestamp('20-DEC-07','DD-MON-RR HH24.MI.SSXFF'),1);
    COMMIT;
    Now if you create a view:
    create or replace view test_v
    (ITEM_NO, ITEM_TYPE, ITEM_NO_SCO,ITEM_TYPE_SCO)
    as
    SELECT T.ITEM_NO, T.ITEM_TYPE, CONNECT_BY_ROOT T.ITEM_NO_SCO,T.ITEM_TYPE_SCO
    FROM
    SELECT NVL(C.ITEM_NO_CHILD, I.ITEM_NO) ITEM_NO, NVL(C.ITEM_TYPE_CHILD, I.ITEM_TYPE) ITEM_TYPE, I.ITEM_TYPE_SCO, I.ITEM_NO_SCO
    FROM isct I,
    icont C
    WHERE I.ITEM_NO = C.ITEM_NO(+)
    AND I.ITEM_TYPE = C.ITEM_TYPE(+)
    ) T
    CONNECT BY PRIOR T.ITEM_NO = T.ITEM_NO_SCO AND PRIOR T.ITEM_TYPE = T.ITEM_TYPE_SCO;
    Then run the below query:
    select * from test_v where item_no_sco = '00245905'
    the output is got within a second. but the real scenario is that both table icont and isct have millions of rows. In that case even this small query of the view takes 10minutes as there a FULL TABLE JOIN.
    How do I give the START WITH in the view to make it faster i.e.
    even with millions of rows the output of this comes in seconds:
    SELECT T.ITEM_NO, T.ITEM_TYPE, CONNECT_BY_ROOT T.ITEM_NO_SCO,T.ITEM_TYPE_SCO
    FROM
    SELECT NVL(C.ITEM_NO_CHILD, I.ITEM_NO) ITEM_NO, NVL(C.ITEM_TYPE_CHILD, I.ITEM_TYPE) ITEM_TYPE, I.ITEM_TYPE_SCO, I.ITEM_NO_SCO
    FROM isct I,
    icont C
    WHERE I.ITEM_NO = C.ITEM_NO(+)
    AND I.ITEM_TYPE = C.ITEM_TYPE(+)
    ) T
    START WITH T.ITEM_NO_SCO = '00245905'
    CONNECT BY PRIOR T.ITEM_NO = T.ITEM_NO_SCO AND PRIOR T.ITEM_TYPE = T.ITEM_TYPE_SCO;
    I want to summarize the above the post, you can use START WITH in a stand alone query, in a function etc. But how do you use it in a VIEW?
    Thanks,
    Vikram

    user12004283 wrote:
    Hi,
    Thanks for the quick replies.
    I was more looking for a solution with only SQL i.e I dont want to go for any package or outside variable.
    Isn't there a way to achieve this through advanced SQL?
    Also why when I create a join in a query having connect by without start with it does a full table scan of the joined table, isnt there a better way to create a join, I mean there is no need to run the whole view at a time, it would be run with a input but why isnt the connect by using to input as a START WITH!
    Thanks,
    VikramBut the solution is "only SQL", that you have to initialize a variable doesn't change that fact.
    If you absolutely can't make that solution work, you could code this in DYNAMIC SQL, but that would much more 'bad' than the suggested implementation.
    Why exactly do you need a view at all for this?
    SELECT
      NVL(C.ITEM_NO_CHILD, I.ITEM_NO)     as ITEM_NO,
      NVL(C.ITEM_TYPE_CHILD, I.ITEM_TYPE) as ITEM_TYPE,
      CONNECT_BY_ROOT I.ITEM_NO_SCO       as ITEM_NO_SCO,
      I.ITEM_TYPE_SCO 
    FROM  isct  I,
          icont C
    WHERE I.ITEM_NO = C.ITEM_NO(+)
    AND I.ITEM_TYPE = C.ITEM_TYPE(+)
    start with I.ITEM_NO_SCO = :YOUR_BIND_VARIABLE
    CONNECT BY PRIOR I.ITEM_NO = I.ITEM_NO_SCO AND PRIOR I.ITEM_TYPE = I.ITEM_TYPE_SCO;Is about as simple as it gets, no need for a view ... no need for anything flashy. What is your justification behind 'needing' a view for this?

Maybe you are looking for

  • Cropping not maintained from Bridge to PS when batch processing

    This is the oddest thing, because it has never happened before. I am sending images that are cropped in Bridge to a Photoshop batch process (just image resize and sharpening), but they are showing up in the new folder un-cropped. Anybody seen this be

  • My ipod nano went weird?

    For the past year I've been putting music on the ipod nano with no problem. The music was fine, perfect quality. Yesterday I wanted to put more songs on it so I downloaded itunes and installed it. Dragged my songs onto the ipod and let it finish doin

  • Deletion of Appended searchhelp

    Hi Experts,                   I got a problem while deleting Appended searchhelp.please help me out with this. I have appended a serachhelp to the standard searchhelp.when i try to delete the Append serachhelp system is not allowing me delete saying

  • How do I know if my 4th Generation iPad is locked?

    How can I find out if my 4th Generation iPad is locked?

  • Using trunc in oracle

    I get this error message saying literal does not match format string every time i type in the simple query below select trunc(t1.transaction_date) from table_done t1 where trunc(t1.transaction_date, 'YYYY-MM-DD') < '2006-01-01' and trunc(t1.transacti