View difference between Paste ID: 6tzwA03n and mKwHrwCE
SHOW: | | - or go back to the newest paste.
1-
create table tt as select rownum id, t.* from dba_objects where rownum < 100000;
1+
create table tt as select rownum id, t.* from dba_objects t where rownum < 100000;
2
3
insert into tt as select * from tt;
4
5
insert into tt as select * from tt;
6
7
commit;
8
9
set autot on exp stat 
10
SQL> select count(distinct id) from tt;
11
12
COUNT(DISTINCTID)
13
-----------------
14
           999999
15
16
Elapsed: 00:00:02.15
17
18
Execution Plan
19
----------------------------------------------------------
20
Plan hash value: 1056889062
21
22
-----------------------------------------------------------------------------------------
23
| Id  | Operation            | Name     | Rows  | Bytes |TempSpc| Cost (%CPU)| Time     |
24
-----------------------------------------------------------------------------------------
25
|   0 | SELECT STATEMENT     |          |     1 |    13 |       |  6834   (1)| 00:00:01 |
26
|   1 |  SORT AGGREGATE      |          |     1 |    13 |       |            |          |
27
|   2 |   VIEW               | VW_DAG_0 |   999K|    12M|       |  6834   (1)| 00:00:01 |
28
|   3 |    HASH GROUP BY     |          |   999K|  4882K|    11M|  6834   (1)| 00:00:01 |
29
|   4 |     TABLE ACCESS FULL| TT       |   999K|  4882K|       |  3769   (1)| 00:00:01 |
30
-----------------------------------------------------------------------------------------
31
32
33
Statistics
34
----------------------------------------------------------
35
          0  recursive calls
36
          0  db block gets
37
      95708  consistent gets
38
      54725  physical reads
39
          0  redo size
40
        553  bytes sent via SQL*Net to client
41
        552  bytes received via SQL*Net from client
42
          2  SQL*Net roundtrips to/from client
43
          0  sorts (memory)
44
          0  sorts (disk)
45
          1  rows processed
46
47
		  
48
SQL> SELECT APPROX_COUNT_DISTINCT(id) from tt;
49
50
APPROX_COUNT_DISTINCT(ID)
51
-------------------------
52
                   971092
53
54
Elapsed: 00:00:00.71
55
56
Execution Plan
57
----------------------------------------------------------
58
Plan hash value: 3133740314
59
60
------------------------------------------------------------------------------
61
| Id  | Operation             | Name | Rows  | Bytes | Cost (%CPU)| Time     |
62
------------------------------------------------------------------------------
63
|   0 | SELECT STATEMENT      |      |     1 |     5 |  3769   (1)| 00:00:01 |
64
|   1 |  SORT AGGREGATE APPROX|      |     1 |     5 |            |          |
65
|   2 |   TABLE ACCESS FULL   | TT   |   999K|  4882K|  3769   (1)| 00:00:01 |
66
------------------------------------------------------------------------------
67
68
69
Statistics
70
----------------------------------------------------------
71
          5  recursive calls
72
          0  db block gets
73
      95710  consistent gets
74
      54725  physical reads
75
          0  redo size
76
        561  bytes sent via SQL*Net to client
77
        552  bytes received via SQL*Net from client
78
          2  SQL*Net roundtrips to/from client
79
          0  sorts (memory)
80
          0  sorts (disk)
81
          1  rows processed