Bonjour,

J'ai besoin d'afficher la liste des temps d'exécution sur plusieurs jours, heure par heure, pour un ordre SQL précis.
Après avoir pas mal traîné sur le net, je me suis rendu compte que cette demande n'était pas si simple dès qu'on veut remonter dans le passé et que les ordres ne sont plus dans v$sql.

Voici ma requête, est-ce que vous pensez qu'elle est correcte?
J'utilise la table DBA_HIST_SQLSTAT et les champs ELAPSED_TIME_DELTA et EXECUTIONS_DELTA qui sont respectivement le temps écoulé pour les N exécutions d'un sql_id dans le snapshot et son nombre d'exécution dans le même snapshot.


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
set linesize 150 pagesize 5000
col "Jour début" for A15
col "Jour fin" for A15
col "Heure début" for A15
col "Heure fin" for A15
 
break on "Jour début" skip 1
 
select 
	SNAP.SNAP_ID, 
	to_char(SNAP.BEGIN_INTERVAL_TIME,'DD/MM/YYYY') AS "Jour début",
	to_char(SNAP.BEGIN_INTERVAL_TIME,'HH24:MI:SS') AS "Heure début", 
	to_char(SNAP.END_INTERVAL_TIME,'DD/MM/YYYY') AS "Jour fin",
	to_char(SNAP.END_INTERVAL_TIME,'HH24:MI:SS') AS "Heure fin", 
	EXECUTIONS_DELTA AS "Nb d'exécution",
	round(SQL.ELAPSED_TIME_DELTA/decode(EXECUTIONS_DELTA,0,1,EXECUTIONS_DELTA)/1000,2) AS "Temps milli s", 
	round((SQL.ELAPSED_TIME_DELTA/decode(EXECUTIONS_DELTA,0,1,EXECUTIONS_DELTA))/1000000,2) AS "Temps s"
from 
	DBA_HIST_SQLSTAT SQL, 
	DBA_HIST_SNAPSHOT SNAP
where 
	SNAP.SNAP_ID = SQL.SNAP_ID and 
	SQL.SQL_ID = '&sql_id'
order by 
	SNAP.SNAP_ID;
 
 
 
   SNAP_ID Jour début      Heure début    Jour fin         Heure fin       Nb d'exécution Temps milli s    Temps s
---------- --------------- --------------- --------------- --------------- --------------- ------------- ----------
     19108 09/01/2018      01:00:22        09/01/2018      02:00:31                     16       5287.72       5.29
     19113                 06:00:57        09/01/2018      07:00:03                     58       2682.74       2.68
     19114                 07:00:03        09/01/2018      08:00:09                   1723       2785.15       2.79
     19115                 08:00:09        09/01/2018      09:00:16                   3235       2837.58       2.84
     19116                 09:00:16        09/01/2018      10:00:24                   6454       3062.59       3.06
     19117                 10:00:24        09/01/2018      11:00:33                   6854       3212.02       3.21
     19118                 11:00:33        09/01/2018      12:00:41                   5999       3056.96       3.06
     19119                 12:00:41        09/01/2018      13:00:49                   3553       2983.45       2.98
     19120                 13:00:49        09/01/2018      14:00:56                   4479       2911.17       2.91
     19121                 14:00:56        09/01/2018      15:00:03                   5799       3030.82       3.03
     19122                 15:00:03        09/01/2018      16:00:11                   5497       3055.83       3.06
     19123                 16:00:11        09/01/2018      17:00:18                   3616       2978.25       2.98
     19124                 17:00:18        09/01/2018      18:00:25                   1653       2922.01       2.92
     19125                 18:00:25        09/01/2018      19:00:32                    590       2881.23       2.88
     19126                 19:00:32        09/01/2018      20:00:38                    153       2819.59       2.82
     19127                 20:00:38        09/01/2018      21:00:44                     34       2773.81       2.77
     19128                 21:00:44        09/01/2018      22:00:51                     13       2812.49       2.81
     19129                 22:00:51        09/01/2018      23:00:57                      6       2867.38       2.87
     19130                 23:00:57        10/01/2018      00:00:03                     10       2902.88        2.9
 
     19131 10/01/2018      00:00:03        10/01/2018      01:00:10                      2       3541.64       3.54
     19132                 01:00:10        10/01/2018      02:00:18                      4       3008.39       3.01
     19137                 06:00:45        10/01/2018      07:00:51                     47        2766.9       2.77
     19138                 07:00:51        10/01/2018      08:00:58                   1755       2816.86       2.82
     19139                 08:00:58        10/01/2018      09:00:05                   3745       2897.61        2.9