Yes, this is for one query. On a flushed DB (buffer pool/shared pool), a single query was executed in a SQLPlus window. Keeping the window open (to be able to track its SID), SYSTEM account was used to execute:
select * from V$SESS_TIME_MODEL where SID=NN;Among other values, here are the ones reported:
STAT_NAMEVALUE
DB time48533918
DB CPU42158590
parse time elapsed45739291
hard parse elapsed time45734101
PL/SQL execution elapsed time247
inbound PL/SQL rpc elapsed time0
PL/SQL compilation elapsed time7151
Java execution elapsed time0
repeated bind elapsed time1500
RMAN cpu time (backup/restore)0
Statistics are up to date (100% sampling).
Query is long:
SELECT
COUNT (DISTINCT ent_000000.pk)
FROM entity ent_000000
INNER JOIN recordtextvalue val_000002
ON val_000002.sourceentityfk = ent_000000.pk
AND val_000002.fieldfk = HEXTORAW ('80B58FEACC79E011AD2400155D018001')
AND ( LOWER (val_000002.VALUE) LIKE LOWER ('%1%') ESCAPE '~'
OR LOWER (val_000002.VALUE) LIKE LOWER ('%2%') ESCAPE '~'
OR LOWER (val_000002.VALUE) LIKE LOWER ('%3%') ESCAPE '~'
OR LOWER (val_000002.VALUE) LIKE LOWER ('%4%') ESCAPE '~'
OR LOWER (val_000002.VALUE) LIKE LOWER ('%5%') ESCAPE '~'
OR LOWER (val_000002.VALUE) LIKE LOWER ('%6%') ESCAPE '~'
OR LOWER (val_000002.VALUE) LIKE LOWER ('%7%') ESCAPE '~'
OR LOWER (val_000002.VALUE) LIKE LOWER ('%8%') ESCAPE '~'
)
INNER JOIN recordsinglechoicevalue val_000012
ON val_000012.sourceentityfk = ent_000000.pk
AND val_000012.fieldfk = HEXTORAW ('8DB58FEACC79E011AD2400155D018001')
INNER JOIN record_ rec_000014
ON rec_000014.pk = val_000012.recordfk
AND rec_000014.entityfk = val_000012.sourceentityfk
AND rec_000014.recordtypefk = HEXTORAW ('7EB58FEACC79E011AD2400155D018001')
INNER JOIN
(SELECT
MAX (rec_000016.TIMESTAMP) AS TIMESTAMP,
rec_000016.entityfk AS groupkey
FROM record_ rec_000016
INNER JOIN recordsinglechoicevalue val_000018
ON val_000018.recordfk = rec_000016.pk
AND val_000018.sourceentityfk = rec_000016.entityfk
AND val_000018.fieldfk = HEXTORAW ('8DB58FEACC79E011AD2400155D018001')
WHERE 1 = 1
AND rec_000016.recordtypefk = HEXTORAW ('7EB58FEACC79E011AD2400155D018001')
GROUP BY rec_000016.entityfk
) tbl_000020
ON tbl_000020.TIMESTAMP = rec_000014.TIMESTAMP
AND tbl_000020.groupkey = rec_000014.entityfk
INNER JOIN recordsinglechoicevalue val_000021
ON val_000021.sourceentityfk = ent_000000.pk
AND val_000021.fieldfk = HEXTORAW ('AF5F45338C58DE4CB3833AD9D54351A7')
INNER JOIN record_ rec_000023
ON rec_000023.pk = val_000021.recordfk
AND rec_000023.entityfk = val_000021.sourceentityfk
AND rec_000023.recordtypefk = HEXTORAW ('7EB58FEACC79E011AD2400155D018001')
JOIN
(SELECT MIN (rec_000025.TIMESTAMP) AS TIMESTAMP, rec_000025.entityfk AS groupkey
FROM record_ rec_000025 INNER JOIN recordsinglechoicevalue val_000027
ON val_000027.recordfk = rec_000025.pk
AND val_000027.sourceentityfk = rec_000025.entityfk
AND val_000027.fieldfk = HEXTORAW ('AF5F45338C58DE4CB3833AD9D54351A7')
WHERE 1 = 1 AND rec_000025.recordtypefk = HEXTORAW ('7EB58FEACC79E011AD2400155D018001')
GROUP BY rec_000025.entityfk) tbl_000029
ON tbl_000029.TIMESTAMP = rec_000023.TIMESTAMP
AND tbl_000029.groupkey = rec_000023.entityfk
AND val_000021.choicefk IN
(HEXTORAW ('A038588B67E6C6418360E92AB231EA30'),
HEXTORAW ('DA6E7059FB243F40B97CF91BA75EE532'),
HEXTORAW ('DA6BE7C37D157A4BBD34032F76983916')
)
INNER JOIN record_ val_000033
ON val_000033.pk = rec_000023.pk
AND val_000033.entityfk = rec_000023.entityfk
AND val_000033.TIMESTAMP IS NOT NULL
AND val_000033.recordtypefk IN (SELECT rt.pk
FROM recordtype rt JOIN recordtypemember rtm ON rtm.recordtypefk = rt.pk
WHERE rtm.fieldfk = HEXTORAW ('83B58FEACC79E011AD2400155D018001'))
AND val_000033.TIMESTAMP >= TO_DATE ('1/1/1925 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM')
INNER JOIN recordsinglechoicevalue val_000036
ON val_000036.sourceentityfk = ent_000000.pk
AND val_000036.fieldfk = HEXTORAW ('125A01C9DAF726448D8DB1F7B27091DE')
INNER JOIN record_ rec_000038
ON rec_000038.pk = val_000036.recordfk
AND rec_000038.entityfk = val_000036.sourceentityfk
AND rec_000038.recordtypefk = HEXTORAW ('7EB58FEACC79E011AD2400155D018001')
JOIN
(SELECT MIN (rec_000040.TIMESTAMP) AS TIMESTAMP, rec_000040.entityfk AS groupkey
FROM record_ rec_000040 INNER JOIN recordsinglechoicevalue val_000042
ON val_000042.recordfk = rec_000040.pk
AND val_000042.sourceentityfk = rec_000040.entityfk
AND val_000042.fieldfk = HEXTORAW ('125A01C9DAF726448D8DB1F7B27091DE')
WHERE 1 = 1 AND rec_000040.recordtypefk = HEXTORAW ('7EB58FEACC79E011AD2400155D018001')
GROUP BY rec_000040.entityfk) tbl_000044
ON tbl_000044.TIMESTAMP = rec_000038.TIMESTAMP
AND tbl_000044.groupkey = rec_000038.entityfk
AND val_000036.choicefk IN
(HEXTORAW ('9DDEB479A5F44C4AB9C03B0FBE2CCD89'),
HEXTORAW ('723CBD322AB52B439E9160F29BB27E17'),
HEXTORAW ('492F484AD5FED04893F82F4824F1B5E2'),
HEXTORAW ('C3F9C1F514AFB146A0F4BABAA2577B84')
)
INNER JOIN record_ val_000049
ON val_000049.entityfk = ent_000000.pk
AND 'Diagnosis' IS NOT NULL
AND val_000049.recordtypefk IN (SELECT rt.pk
FROM recordtype rt JOIN recordtypemember rtm ON rtm.recordtypefk = rt.pk
WHERE rtm.fieldfk = HEXTORAW ('F85D675BF5D04448A608F9479A653BD3'))
WHERE 1 = 1
AND ent_000000.entitytypefk = HEXTORAW ('66B9B948F000DB1192370014A5726350')
;... and here is the explain plan for it:
Execution Plan
----------------------------------------------------------
Plan hash value: 1632407278
-----------------------------------------------------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Pstart| Pstop |
-----------------------------------------------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 10 | 1331 (6)| 00:00:01 | | |
| 1 | SORT AGGREGATE | | 1 | 10 | | | | |
| 2 | VIEW | VM_NWVW_1 | 1 | 10 | 1331 (6)| 00:00:01 | | |
| 3 | HASH GROUP BY | | 1 | 581 | 1331 (6)| 00:00:01 | | |
| 4 | NESTED LOOPS | | 1 | 581 | 1330 (6)| 00:00:01 | | |
| 5 | NESTED LOOPS | | 1 | 568 | 1326 (6)| 00:00:01 | | |
| 6 | NESTED LOOPS | | 1 | 515 | 1324 (6)| 00:00:01 | | |
| 7 | NESTED LOOPS | | 1 | 502 | 1319 (6)| 00:00:01 | | |
| 8 | NESTED LOOPS SEMI | | 1 | 449 | 1317 (6)| 00:00:01 | | |
| 9 | NESTED LOOPS | | 1 | 415 | 1316 (6)| 00:00:01 | | |
| 10 | NESTED LOOPS | | 1 | 402 | 1311 (6)| 00:00:01 | | |
| 11 | NESTED LOOPS | | 4 | 1396 | 1303 (6)| 00:00:01 | | |
| 12 | NESTED LOOPS | | 4 | 1156 | 1295 (6)| 00:00:01 | | |
|* 13 | HASH JOIN | | 4 | 952 | 1291 (6)| 00:00:01 | | |
|* 14 | HASH JOIN | | 21 | 3570 | 1284 (6)| 00:00:01 | | |
| 15 | PARTITION HASH SINGLE | | 293 | 19924 | 4 (0)| 00:00:01 | 98 | 98 |
| 16 | INLIST ITERATOR | | | | | | | |
|* 17 | INDEX RANGE SCAN | RDSINGLECHOICEVALUE_CFER_IDX | 293 | 19924 | 4 (0)| 00:00:01 | 98 | 98 |
|* 18 | HASH JOIN | | 1186 | 118K| 1280 (6)| 00:00:01 | | |
|* 19 | INDEX RANGE SCAN | ENTITY_TYPE_PK_IDX | 16538 | 549K| 19 (6)| 00:00:01 | | |
| 20 | NESTED LOOPS | | 146K| 9749K| 1257 (6)| 00:00:01 | | |
| 21 | SORT UNIQUE | | 1 | 34 | 2 (0)| 00:00:01 | | |
|* 22 | INDEX RANGE SCAN | RDTYPEMEMBER_FIELD_RDTYPE_IDX | 1 | 34 | 2 (0)| 00:00:01 | | |
|* 23 | INDEX RANGE SCAN | RECORD_TYPE_ENTITY_PK_IDX | 141K| 4693K| 1254 (6)| 00:00:01 | | |
| 24 | PARTITION HASH SINGLE | | 3300 | 219K| 6 (0)| 00:00:01 | 30 | 30 |
| 25 | INLIST ITERATOR | | | | | | | |
|* 26 | INDEX RANGE SCAN | RDSINGLECHOICEVALUE_CFER_IDX | 3300 | 219K| 6 (0)| 00:00:01 | 30 | 30 |
| 27 | PARTITION HASH SINGLE | | 1 | 51 | 1 (0)| 00:00:01 | 9 | 9 |
|* 28 | INDEX RANGE SCAN | RDSINGLECHOICEVALUE_EFR_IDX | 1 | 51 | 1 (0)| 00:00:01 | 9 | 9 |
| 29 | PARTITION HASH SINGLE | | 1 | 60 | 2 (0)| 00:00:01 | 5 | 5 |
|* 30 | TABLE ACCESS BY LOCAL INDEX ROWID| RECORDTEXTVALUE | 1 | 60 | 2 (0)| 00:00:01 | 5 | 5 |
|* 31 | INDEX RANGE SCAN | RDTEXTVALUE_EFR_IDX | 1 | | 1 (0)| 00:00:01 | 5 | 5 |
|* 32 | TABLE ACCESS BY INDEX ROWID | RECORD_ | 1 | 53 | 2 (0)| 00:00:01 | | |
|* 33 | INDEX UNIQUE SCAN | RECORD_TYPE_ENTITY_PK_IDX | 1 | | 1 (0)| 00:00:01 | | |
|* 34 | VIEW PUSHED PREDICATE | | 1 | 13 | 5 (20)| 00:00:01 | | |
|* 35 | FILTER | | | | | | | |
| 36 | SORT AGGREGATE | | 1 | 73 | | | | |
| 37 | NESTED LOOPS | | | | | | | |
| 38 | NESTED LOOPS | | 1 | 73 | 5 (20)| 00:00:01 | | |
| 39 | VIEW | VW_GBF_11 | 1 | 20 | 3 (34)| 00:00:01 | | |
| 40 | SORT GROUP BY | | 1 | 51 | 3 (34)| 00:00:01 | | |
| 41 | PARTITION HASH SINGLE | | 1 | 51 | 2 (0)| 00:00:01 | 98 | 98 |
|* 42 | INDEX RANGE SCAN | RDSINGLECHOICEVALUE_EFR_IDX | 1 | 51 | 2 (0)| 00:00:01 | 98 | 98 |
|* 43 | INDEX UNIQUE SCAN | RECORD_TYPE_ENTITY_PK_IDX | 1 | | 1 (0)| 00:00:01 | | |
| 44 | TABLE ACCESS BY INDEX ROWID | RECORD_ | 1 | 53 | 2 (0)| 00:00:01 | | |
|* 45 | INDEX RANGE SCAN | RDTYPEMEMBER_FIELD_RDTYPE_IDX | 1 | 34 | 1 (0)| 00:00:01 | | |
|* 46 | TABLE ACCESS BY INDEX ROWID | RECORD_ | 1 | 53 | 2 (0)| 00:00:01 | | |
|* 47 | INDEX UNIQUE SCAN | RECORD_TYPE_ENTITY_PK_IDX | 1 | | 1 (0)| 00:00:01 | | |
|* 48 | VIEW PUSHED PREDICATE | | 1 | 13 | 5 (20)| 00:00:01 | | |
|* 49 | FILTER | | | | | | | |
| 50 | SORT AGGREGATE | | 1 | 73 | | | | |
| 51 | NESTED LOOPS | | | | | | | |
| 52 | NESTED LOOPS | | 1 | 73 | 5 (20)| 00:00:01 | | |
| 53 | VIEW | VW_GBF_17 | 1 | 20 | 3 (34)| 00:00:01 | | |
| 54 | SORT GROUP BY | | 1 | 51 | 3 (34)| 00:00:01 | | |
| 55 | PARTITION HASH SINGLE | | 1 | 51 | 2 (0)| 00:00:01 | 30 | 30 |
|* 56 | INDEX RANGE SCAN | RDSINGLECHOICEVALUE_EFR_IDX | 1 | 51 | 2 (0)| 00:00:01 | 30 | 30 |
|* 57 | INDEX UNIQUE SCAN | RECORD_TYPE_ENTITY_PK_IDX | 1 | | 1 (0)| 00:00:01 | | |
| 58 | TABLE ACCESS BY INDEX ROWID | RECORD_ | 1 | 53 | 2 (0)| 00:00:01 | | |
|* 59 | TABLE ACCESS BY INDEX ROWID | RECORD_ | 1 | 53 | 2 (0)| 00:00:01 | | |
|* 60 | INDEX UNIQUE SCAN | RECORD_TYPE_ENTITY_PK_IDX | 1 | | 1 (0)| 00:00:01 | | |
|* 61 | VIEW PUSHED PREDICATE | | 1 | 13 | 4 (0)| 00:00:01 | | |
|* 62 | FILTER | | | | | | | |
| 63 | SORT AGGREGATE | | 1 | 104 | | | | |
| 64 | NESTED LOOPS | | | | | | | |
| 65 | NESTED LOOPS | | 1 | 104 | 4 (0)| 00:00:01 | | |
| 66 | PARTITION HASH SINGLE | | 1 | 51 | 2 (0)| 00:00:01 | 9 | 9 |
|* 67 | INDEX RANGE SCAN | RDSINGLECHOICEVALUE_EFR_IDX | 1 | 51 | 2 (0)| 00:00:01 | 9 | 9 |
|* 68 | INDEX UNIQUE SCAN | RECORD_TYPE_ENTITY_PK_IDX | 1 | | 1 (0)| 00:00:01 | | |
| 69 | TABLE ACCESS BY INDEX ROWID | RECORD_ | 1 | 53 | 2 (0)| 00:00:01 | | |
-----------------------------------------------------------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
13 - access("VAL_000036"."SOURCEENTITYFK"="ENT_000000"."PK")
14 - access("VAL_000021"."SOURCEENTITYFK"="ENT_000000"."PK")
17 - access(("VAL_000021"."CHOICEFK"=HEXTORAW('A038588B67E6C6418360E92AB231EA30') OR
"VAL_000021"."CHOICEFK"=HEXTORAW('DA6BE7C37D157A4BBD34032F76983916') OR
"VAL_000021"."CHOICEFK"=HEXTORAW('DA6E7059FB243F40B97CF91BA75EE532') ) AND
"VAL_000021"."FIELDFK"=HEXTORAW('AF5F45338C58DE4CB3833AD9D54351A7') )
18 - access("VAL_000049"."ENTITYFK"="ENT_000000"."PK")
19 - access("ENT_000000"."ENTITYTYPEFK"=HEXTORAW('66B9B948F000DB1192370014A5726350') )
22 - access("RTM"."FIELDFK"=HEXTORAW('F85D675BF5D04448A608F9479A653BD3') )
23 - access("VAL_000049"."RECORDTYPEFK"="RTM"."RECORDTYPEFK")
26 - access(("VAL_000036"."CHOICEFK"=HEXTORAW('492F484AD5FED04893F82F4824F1B5E2') OR
"VAL_000036"."CHOICEFK"=HEXTORAW('723CBD322AB52B439E9160F29BB27E17') OR
"VAL_000036"."CHOICEFK"=HEXTORAW('9DDEB479A5F44C4AB9C03B0FBE2CCD89') OR
"VAL_000036"."CHOICEFK"=HEXTORAW('C3F9C1F514AFB146A0F4BABAA2577B84') ) AND
"VAL_000036"."FIELDFK"=HEXTORAW('125A01C9DAF726448D8DB1F7B27091DE') )
28 - access("VAL_000012"."SOURCEENTITYFK"="ENT_000000"."PK" AND "VAL_000012"."FIELDFK"=HEXTORAW('8DB58FEACC79E011AD2400155D018001') )
30 - filter(LOWER("VAL_000002"."VALUE") LIKE U'%1%' ESCAPE U'~' OR LOWER("VAL_000002"."VALUE") LIKE U'%2%' ESCAPE U'~' OR
LOWER("VAL_000002"."VALUE") LIKE U'%3%' ESCAPE U'~' OR LOWER("VAL_000002"."VALUE") LIKE U'%4%' ESCAPE U'~' OR
LOWER("VAL_000002"."VALUE") LIKE U'%5%' ESCAPE U'~' OR LOWER("VAL_000002"."VALUE") LIKE U'%6%' ESCAPE U'~' OR
LOWER("VAL_000002"."VALUE") LIKE U'%7%' ESCAPE U'~' OR LOWER("VAL_000002"."VALUE") LIKE U'%8%' ESCAPE U'~')
31 - access("VAL_000002"."SOURCEENTITYFK"="ENT_000000"."PK" AND "VAL_000002"."FIELDFK"=HEXTORAW('80B58FEACC79E011AD2400155D018001') )
32 - filter("VAL_000033"."TIMESTAMP">=TIMESTAMP' 1925-01-01 00:00:00')
33 - access("RECORDTYPEFK"=HEXTORAW('7EB58FEACC79E011AD2400155D018001') AND "ENTITYFK"="VAL_000021"."SOURCEENTITYFK" AND
"VAL_000021"."RECORDFK"="VAL_000033"."PK")
34 - filter("TBL_000029"."TIMESTAMP"="TIMESTAMP")
35 - filter(COUNT(*)>0 AND MIN("REC_000025"."TIMESTAMP")>=TIMESTAMP' 1925-01-01 00:00:00')
42 - access("VAL_000027"."SOURCEENTITYFK"="ENTITYFK" AND "VAL_000027"."FIELDFK"=HEXTORAW('AF5F45338C58DE4CB3833AD9D54351A7') )
43 - access("REC_000025"."RECORDTYPEFK"=HEXTORAW('7EB58FEACC79E011AD2400155D018001') AND "REC_000025"."ENTITYFK"="ENTITYFK" AND
"ITEM_2"="REC_000025"."PK")
filter("ITEM_1"="REC_000025"."ENTITYFK")
45 - access("RTM"."FIELDFK"=HEXTORAW('83B58FEACC79E011AD2400155D018001') AND
"RTM"."RECORDTYPEFK"=HEXTORAW('7EB58FEACC79E011AD2400155D018001') )
filter("VAL_000033"."RECORDTYPEFK"="RTM"."RECORDTYPEFK")
46 - filter("REC_000038"."TIMESTAMP" IS NOT NULL)
47 - access("REC_000038"."RECORDTYPEFK"=HEXTORAW('7EB58FEACC79E011AD2400155D018001') AND
"REC_000038"."ENTITYFK"="VAL_000036"."SOURCEENTITYFK" AND "REC_000038"."PK"="VAL_000036"."RECORDFK")
48 - filter("TBL_000044"."TIMESTAMP"="REC_000038"."TIMESTAMP")
49 - filter(COUNT(*)>0)
56 - access("VAL_000042"."SOURCEENTITYFK"="REC_000038"."ENTITYFK" AND
"VAL_000042"."FIELDFK"=HEXTORAW('125A01C9DAF726448D8DB1F7B27091DE') )
57 - access("REC_000040"."RECORDTYPEFK"=HEXTORAW('7EB58FEACC79E011AD2400155D018001') AND
"REC_000040"."ENTITYFK"="REC_000038"."ENTITYFK" AND "ITEM_2"="REC_000040"."PK")
filter("ITEM_1"="REC_000040"."ENTITYFK")
59 - filter("REC_000014"."TIMESTAMP" IS NOT NULL)
60 - access("REC_000014"."RECORDTYPEFK"=HEXTORAW('7EB58FEACC79E011AD2400155D018001') AND
"REC_000014"."ENTITYFK"="VAL_000012"."SOURCEENTITYFK" AND "REC_000014"."PK"="VAL_000012"."RECORDFK")
61 - filter("TBL_000020"."TIMESTAMP"="REC_000014"."TIMESTAMP")
62 - filter(COUNT(*)>0)
67 - access("VAL_000018"."SOURCEENTITYFK"="REC_000014"."ENTITYFK" AND
"VAL_000018"."FIELDFK"=HEXTORAW('8DB58FEACC79E011AD2400155D018001') )
68 - access("REC_000016"."RECORDTYPEFK"=HEXTORAW('7EB58FEACC79E011AD2400155D018001') AND
"REC_000016"."ENTITYFK"="REC_000014"."ENTITYFK" AND "VAL_000018"."RECORDFK"="REC_000016"."PK")
filter("VAL_000018"."SOURCEENTITYFK"="REC_000016"."ENTITYFK")
Note
-----
- dynamic sampling used for this statement (level=4)
- automatic DOP: Computed Degree of Parallelism is 1 because of parallel threshold
Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
30331 consistent gets
0 physical reads
0 redo size
367 bytes sent via SQL*Net to client
364 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
5179 sorts (memory)
0 sorts (disk)
1 rows processed
SQL>Record***Value tables are all partitioned by FieldFk (64 partitions by hash).
Thank you!
--Alex
Edited by: al**** on Oct 12, 2012 6:15 PM
Edited by: al**** on Oct 12, 2012 6:16 PM
Edited by: al**** on Oct 12, 2012 6:17 PM
Edited by: al**** on Oct 12, 2012 6:17 PM