使用distinct和不使用distinct到底可以造成多大损耗呢
一个稍微复杂一点的SQL,连接了5张表
--------------------------------------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
--------------------------------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 6685 | 4119K| | 46354 (1)| 00:09:17 |
|* 1 | FILTER | | | | | | |
| 2 | TABLE ACCESS BY INDEX ROWID | PSP_GROUP_CAT_MASTER | 1 | 14 | | 2 (0)| 00:00:01 |
|* 3 | INDEX RANGE SCAN | PSP_GROUP_CAT_MASTER_PK | 1 | | | 1 (0)| 00:00:01 |
|* 4 | FILTER | | | | | | |
| 5 | TABLE ACCESS BY INDEX ROWID | PSP_GROUP_CAT_MASTER | 1 | 14 | | 2 (0)| 00:00:01 |
|* 6 | INDEX RANGE SCAN | PSP_GROUP_CAT_MASTER_PK | 1 | | | 1 (0)| 00:00:01 |
| 7 | SORT UNIQUE | | 6685 | 4119K| 4472K| 45461 (1)| 00:09:06 |
|* 8 | COUNT STOPKEY | | | | | | |
|* 9 | FILTER | | | | | | |
|* 10 | HASH JOIN RIGHT OUTER | | 6685 | 4119K| | 43424 (1)| 00:08:42 |
| 11 | TABLE ACCESS FULL | PSP_IND_CAT_MASTER | 16 | 304 | | 3 (0)| 00:00:01 |
|* 12 | FILTER | | | | | | |
|* 13 | HASH JOIN RIGHT OUTER | | 15280 | 9132K| | 43420 (1)| 00:08:42 |
| 14 | TABLE ACCESS FULL | PSP_IND_CAT_MASTER | 16 | 304 | | 3 (0)| 00:00:01 |
|* 15 | HASH JOIN RIGHT OUTER | | 34925 | 19M| | 43417 (1)| 00:08:42 |
| 16 | TABLE ACCESS FULL | PSP_CORE_CSIS | 41677 | 447K| | 144 (0)| 00:00:02 |
|* 17 | HASH JOIN OUTER | | 34925 | 19M| 8736K| 43272 (1)| 00:08:40 |
|* 18 | FILTER | | | | | | |
|* 19 | HASH JOIN RIGHT OUTER | | 34925 | 8321K| 2472K| 39196 (1)| 00:07:51 |
| 20 | TABLE ACCESS FULL | PSP_EXISTED_HR_CATEGORY_LIST | 84261 | 1481K| | 585 (1)| 00:00:08 |
| 21 | VIEW | | 105K| 22M| | 37303 (1)| 00:07:28 |
|* 22 | FILTER | | | | | | |
|* 23 | HASH JOIN OUTER | | 105K| 27M| 19M| 37303 (1)| 00:07:28 |
|* 24 | HASH JOIN RIGHT OUTER | | 120K| 18M| 4136K| 32231 (1)| 00:06:27 |
| 25 | TABLE ACCESS FULL | PSP_CORE_ORG_LEVEL | 98360 | 2977K| | 2023 (1)| 00:00:25 |
|* 26 | HASH JOIN RIGHT OUTER | | 120K| 15M| 4712K| 29192 (1)| 00:05:51 |
| 27 | TABLE ACCESS FULL | PSP_CORE_ORG | 98360 | 3554K| | 308 (1)| 00:00:04 |
|* 28 | HASH JOIN OUTER | | 120K| 10M| 10M| 28051 (1)| 00:05:37 |
|* 29 | FILTER | | | | | | |
|* 30 | HASH JOIN RIGHT OUTER| | 120K| 9269K| 3520K| 14464 (1)| 00:02:54 |
| 31 | TABLE ACCESS FULL | PSP_EXISTED_GOC_CATEGORY_LIST | 116K| 2155K| | 1170 (1)| 00:00:15 |
|* 32 | TABLE ACCESS FULL | PSP_CORE_GDW | 360K| 20M| | 11891 (1)| 00:02:23 |
| 33 | TABLE ACCESS FULL | PSP_EMDD_FEED_TB | 477K| 6995K| | 12455 (1)| 00:02:30 |
| 34 | TABLE ACCESS FULL | PSP_EXISTED_CATEGORY_LIST | 268K| 29M| | 2466 (1)| 00:00:30 |
| 35 | TABLE ACCESS FULL | PSP_CORE_ORG_LEVEL | 98360 | 31M| | 2023 (1)| 00:00:25 |
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time | TQ |IN-OUT| PQ Distrib |
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 6685 | 10M| | 13806 (1)| 00:02:46 | | | |
|* 1 | FILTER | | | | | | | | | |
| 2 | TABLE ACCESS BY INDEX ROWID | PSP_GROUP_CAT_MASTER | 1 | 14 | | 2 (0)| 00:00:01 | | | |
|* 3 | INDEX RANGE SCAN | PSP_GROUP_CAT_MASTER_PK | 1 | | | 1 (0)| 00:00:01 | | | |
|* 4 | FILTER | | | | | | | | | |
| 5 | TABLE ACCESS BY INDEX ROWID | PSP_GROUP_CAT_MASTER | 1 | 14 | | 2 (0)| 00:00:01 | | | |
|* 6 | INDEX RANGE SCAN | PSP_GROUP_CAT_MASTER_PK | 1 | | | 1 (0)| 00:00:01 | | | |
| 7 | SORT ORDER BY | | 6685 | 10M| 29M| 13806 (1)| 00:02:46 | | | |
|* 8 | COUNT STOPKEY | | | | | | | | | |
| 9 | PX COORDINATOR | | | | | | | | | |
| 10 | PX SEND QC (RANDOM) | :TQ10014 | 6685 | 10M| | 13805 (1)| 00:02:46 | Q1,14 | P->S | QC (RAND) |
| 11 | BUFFER SORT | | 6685 | 10M| | | | Q1,14 | PCWP | |
|* 12 | COUNT STOPKEY | | | | | | | Q1,14 | PCWC | |
|* 13 | FILTER | | | | | | | Q1,14 | PCWC | |
|* 14 | HASH JOIN RIGHT OUTER | | 6685 | 10M| | 13805 (1)| 00:02:46 | Q1,14 | PCWP | |
| 15 | BUFFER SORT | | | | | | | Q1,14 | PCWC | |
| 16 | PX RECEIVE | | 16 | 304 | | 3 (0)| 00:00:01 | Q1,14 | PCWP | |
| 17 | PX SEND BROADCAST | :TQ10004 | 16 | 304 | | 3 (0)| 00:00:01 | | S->P | BROADCAST |
| 18 | TABLE ACCESS FULL | PSP_IND_CAT_MASTER | 16 | 304 | | 3 (0)| 00:00:01 | | | |
|* 19 | FILTER | | | | | | | Q1,14 | PCWC | |
|* 20 | HASH JOIN RIGHT OUTER | | 15280 | 24M| | 13801 (1)| 00:02:46 | Q1,14 | PCWP | |
| 21 | BUFFER SORT | | | | | | | Q1,14 | PCWC | |
| 22 | PX RECEIVE | | 16 | 304 | | 3 (0)| 00:00:01 | Q1,14 | PCWP | |
| 23 | PX SEND BROADCAST | :TQ10005 | 16 | 304 | | 3 (0)| 00:00:01 | | S->P | BROADCAST |
| 24 | TABLE ACCESS FULL | PSP_IND_CAT_MASTER | 16 | 304 | | 3 (0)| 00:00:01 | | | |
|* 25 | HASH JOIN RIGHT OUTER | | 34925 | 54M| | 13798 (1)| 00:02:46 | Q1,14 | PCWP | |
| 26 | BUFFER SORT | | | | | | | Q1,14 | PCWC | |
| 27 | PX RECEIVE | | 98360 | 31M| | 2023 (1)| 00:00:25 | Q1,14 | PCWP | |
| 28 | PX SEND HASH | :TQ10006 | 98360 | 31M| | 2023 (1)| 00:00:25 | | S->P | HASH |
| 29 | TABLE ACCESS FULL | PSP_CORE_ORG_LEVEL | 98360 | 31M| | 2023 (1)| 00:00:25 | | | |
| 30 | PX RECEIVE | | 34925 | 43M| | 11774 (1)| 00:02:22 | Q1,14 | PCWP | |
| 31 | PX SEND HASH | :TQ10013 | 34925 | 43M| | 11774 (1)| 00:02:22 | Q1,13 | P->P | HASH |
|* 32 | HASH JOIN RIGHT OUTER BUFFERED | | 34925 | 43M| | 11774 (1)| 00:02:22 | Q1,13 | PCWP | |
| 33 | BUFFER SORT | | | | | | | Q1,13 | PCWC | |
| 34 | PX RECEIVE | | 41677 | 447K| | 144 (0)| 00:00:02 | Q1,13 | PCWP | |
| 35 | PX SEND BROADCAST | :TQ10002 | 41677 | 447K| | 144 (0)| 00:00:02 | | S->P | BROADCAST |
| 36 | TABLE ACCESS FULL | PSP_CORE_CSIS | 41677 | 447K| | 144 (0)| 00:00:02 | | | |
|* 37 | FILTER | | | | | | | Q1,13 | PCWC | |
|* 38 | HASH JOIN RIGHT OUTER | | 34925 | 42M| | 11629 (1)| 00:02:20 | Q1,13 | PCWP | |
| 39 | BUFFER SORT | | | | | | | Q1,13 | PCWC | |
| 40 | PX RECEIVE | | 84261 | 1481K| | 585 (1)| 00:00:08 | Q1,13 | PCWP | |
| 41 | PX SEND BROADCAST | :TQ10003 | 84261 | 1481K| | 585 (1)| 00:00:08 | | S->P | BROADCAST |
| 42 | TABLE ACCESS FULL | PSP_EXISTED_HR_CATEGORY_LIST | 84261 | 1481K| | 585 (1)| 00:00:08 | | | |
| 43 | VIEW | | 105K| 127M| | 11044 (1)| 00:02:13 | Q1,13 | PCWP | |
|* 44 | HASH JOIN RIGHT OUTER | | 105K| 27M| | 11044 (1)| 00:02:13 | Q1,13 | PCWP | |
| 45 | PX RECEIVE | | 98360 | 2977K| | 561 (1)| 00:00:07 | Q1,13 | PCWP | |
| 46 | PX SEND HASH | :TQ10011 | 98360 | 2977K| | 561 (1)| 00:00:07 | Q1,11 | P->P | HASH |
| 47 | PX BLOCK ITERATOR | | 98360 | 2977K| | 561 (1)| 00:00:07 | Q1,11 | PCWC | |
| 48 | TABLE ACCESS FULL | PSP_CORE_ORG_LEVEL | 98360 | 2977K| | 561 (1)| 00:00:07 | Q1,11 | PCWP | |
| 49 | PX RECEIVE | | 105K| 24M| | 10481 (1)| 00:02:06 | Q1,13 | PCWP | |
| 50 | PX SEND HASH | :TQ10012 | 105K| 24M| | 10481 (1)| 00:02:06 | Q1,12 | P->P | HASH |
|* 51 | HASH JOIN RIGHT OUTER BUFFERED| | 105K| 24M| | 10481 (1)| 00:02:06 | Q1,12 | PCWP | |
| 52 | PX RECEIVE | | 98360 | 3554K| | 86 (2)| 00:00:02 | Q1,12 | PCWP | |
| 53 | PX SEND HASH | :TQ10009 | 98360 | 3554K| | 86 (2)| 00:00:02 | Q1,09 | P->P | HASH |
| 54 | PX BLOCK ITERATOR | | 98360 | 3554K| | 86 (2)| 00:00:02 | Q1,09 | PCWC | |
| 55 | TABLE ACCESS FULL | PSP_CORE_ORG | 98360 | 3554K| | 86 (2)| 00:00:02 | Q1,09 | PCWP | |
| 56 | PX RECEIVE | | 105K| 21M| | 10395 (1)| 00:02:05 | Q1,12 | PCWP | |
| 57 | PX SEND HASH | :TQ10010 | 105K| 21M| | 10395 (1)| 00:02:05 | Q1,10 | P->P | HASH |
|* 58 | FILTER | | | | | | | Q1,10 | PCWC | |
|* 59 | HASH JOIN OUTER | | 105K| 21M| | 10395 (1)| 00:02:05 | Q1,10 | PCWP | |
|* 60 | HASH JOIN OUTER | | 120K| 10M| | 7928 (1)| 00:01:36 | Q1,10 | PCWP | |
| 61 | PX RECEIVE | | 120K| 9269K| | 4471 (1)| 00:00:54 | Q1,10 | PCWP | |
| 62 | PX SEND HASH | :TQ10007 | 120K| 9269K| | 4471 (1)| 00:00:54 | Q1,07 | P->P | HASH |
|* 63 | FILTER | | | | | | | Q1,07 | PCWC | |
|* 64 | HASH JOIN RIGHT OUTER| | 120K| 9269K| | 4471 (1)| 00:00:54 | Q1,07 | PCWP | |
| 65 | BUFFER SORT | | | | | | | Q1,07 | PCWC | |
| 66 | PX RECEIVE | | 116K| 2155K| | 1170 (1)| 00:00:15 | Q1,07 | PCWP | |
| 67 | PX SEND BROADCAST | :TQ10000 | 116K| 2155K| | 1170 (1)| 00:00:15 | | S->P | BROADCAST |
| 68 | TABLE ACCESS FULL| PSP_EXISTED_GOC_CATEGORY_LIST | 116K| 2155K| | 1170 (1)| 00:00:15 | | | |
| 69 | PX BLOCK ITERATOR | | 360K| 20M| | 3300 (1)| 00:00:40 | Q1,07 | PCWC | |
|* 70 | TABLE ACCESS FULL | PSP_CORE_GDW | 360K| 20M| | 3300 (1)| 00:00:40 | Q1,07 | PCWP | |
| 71 | PX RECEIVE | | 477K| 6995K| | 3456 (1)| 00:00:42 | Q1,10 | PCWP | |
| 72 | PX SEND HASH | :TQ10008 | 477K| 6995K| | 3456 (1)| 00:00:42 | Q1,08 | P->P | HASH |
| 73 | PX BLOCK ITERATOR | | 477K| 6995K| | 3456 (1)| 00:00:42 | Q1,08 | PCWC | |
| 74 | TABLE ACCESS FULL | PSP_EMDD_FEED_TB | 477K| 6995K| | 3456 (1)| 00:00:42 | Q1,08 | PCWP | |
| 75 | BUFFER SORT | | | | | | | Q1,10 | PCWC | |
| 76 | PX RECEIVE | | 268K| 29M| | 2466 (1)| 00:00:30 | Q1,10 | PCWP | |
| 77 | PX SEND HASH | :TQ10001 | 268K| 29M| | 2466 (1)| 00:00:30 | | S->P | HASH |
| 78 | TABLE ACCESS FULL | PSP_EXISTED_CATEGORY_LIST | 268K| 29M| | 2466 (1)| 00:00:30 | | | |
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------