Bonjour,
J'aimerais mieux comprendre le fonctionnement d'oracle au niveau des performances.
Ma question est simple, j'ai la requête ci-dessous :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 SELECT * FROM ( select a.*, ROW_NUMBER() OVER (ORDER BY a.ID DESC) rn from Table a where a.STATUS IN('1', '2', '5', '6', '8') ) result WHERE rn > 0 and rn <= 15A présent je change juste un petit truc dans ma requête :Cost (%CPU) = 15 (100)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 SELECT count(*) FROM ( select a.*, ROW_NUMBER() OVER (ORDER BY a.ID DESC) rn from Table a where a.STATUS IN('1', '2', '5', '6', '8') ) result WHERE rn > 0 and rn <= 15Quelqu'un pourrait m'expliquer ce que oracle fabrique pour prendre 1000 fois plus de CPU pour un simple count et pour afficher 15 ?Cost (%CPU) = 11585 (1)
Merci d'avance pour votre aide
Partager