Hi,
could You please help with translating
SELECT SSS_task_id, extractValue(value(taskhist),'/task/taskId') taskId,
extractValue(value(taskhist), '/task/id') id_,
extractValue(value(typeId), '/typeId') typeId,
rownum wiersz FROM
sss_archive2,
TABLE(xmlsequence(extract(xmltype(SSS_archive2.SSS_data2),'/ns2:ArchivisedTask/taskHistory/task','xmlns:ns2="http://some.com/qservice/model" xmlns:ns3="http://some.com/qservice/method"'))) taskhist,
TABLE (xmlsequence(extract(value(taskhist),'/task/typeId'))) typeId
where
SSS_task_id=extractValue(value(taskhist), '/task/taskId')
and SSS_audit_st=1
to XMLTABLE query .
And is that enought to improve performance or is it rather style only change .
currently I've got plan like:
create table ARH_2 as
SELECT SSS_task_id, extractValue(value(taskhist),'/task/taskId') taskId,
extractValue(value(taskhist), '/task/id') id_,
extractValue(value(typeId), '/typeId') typeId,
rownum wiersz FROM
sss_archive2,
TABLE(xmlsequence(extract(xmltype(SSS_archive2.SSS_data2),'/ns2:ArchivisedTask/taskHistory/task','xmlns:ns2="http://some.com/qservice/model" xmlns:ns3="http://some.com/qservice/method"'))) taskhist,
TABLE (xmlsequence(extract(value(taskhist),'/task/typeId'))) typeId
where
SSS_task_id=extractValue(value(taskhist), '/task/taskId')
and SSS_audit_st=1
Plan hash value: 2424165471
------------------------------------------------------------------------------------------------------------
| Id | Operation | Name | E-Rows | OMem | 1Mem | Used-Mem |
------------------------------------------------------------------------------------------------------------
| 1 | LOAD AS SELECT | | | 519K| 519K| 519K (0)|
| 2 | COUNT | | | | | |
| 3 | NESTED LOOPS | | 267M| | | |
| 4 | NESTED LOOPS | | 16360 | | | |
|* 5 | TABLE ACCESS FULL | SSS_ARCHIVE2 | 631K| | | |
|* 6 | COLLECTION ITERATOR PICKLER FETCH| XMLSEQUENCEFROMXMLTYPE | | | | |
| 7 | COLLECTION ITERATOR PICKLER FETCH | XMLSEQUENCEFROMXMLTYPE | | | | |
------------------------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
5 - filter("SSS_AUDIT_ST"=1)
6 - filter("SSS_TASK_ID"=EXTRACTVALUE(VALUE(KOKBF$),'/task/taskId'))
Note
-----
- dynamic sampling used for this statement
- Warning: basic plan statistics not available. These are only collected when:
* hint 'gather_plan_statistics' is used for the statement or
* parameter 'statistics_level' is set to 'ALL', at session or system level