Skip to content

CWMS-Vue-745: Reimplementing av_location_level and av_virtual_location_level #104

Open
zack-rma wants to merge 31 commits intoHydrologicEngineeringCenter:mainfrom
zack-rma:feature/loc_lvl_view_optimization
Open

CWMS-Vue-745: Reimplementing av_location_level and av_virtual_location_level #104
zack-rma wants to merge 31 commits intoHydrologicEngineeringCenter:mainfrom
zack-rma:feature/loc_lvl_view_optimization

Conversation

@zack-rma
Copy link
Contributor

Continuation of work from #99

Adds tests and documentation

  • splitting av_location_level_ref and av_location_level_values where av_location_level_ref is designed for pagination via CDA and av_location_level_values are decorated by the paginged location_level_codes in the initially filtered av_location_level_ref
  • units are handled via _EN and _SI columns instead of having additional rows. This matches av_virtual_location_level, but not av_location_level
  • sorting is not based on fully concatenated location_level_id, but instead of the constituent parts so that full table scan isn't needed prior to sort. no sorting done within the views

initial performance improvement seen to drop from 90+ seconds for 1000 row retrieval to ~2 seconds for 1000 location level id retrieval (there are actually more than 1000 rows returned because seasonal values are normalized)

adamkorynta and others added 2 commits January 29, 2026 20:26
…ocation_level

-splitting av_location_level_ref and av_location_level_values where av_location_level_ref is designed for pagination via CDA and av_location_level_values are decorated by the paginged location_level_codes in the initially filtered av_location_level_ref
- units are handled via _EN and _SI columns instead of having additional rows. This matches av_virtual_location_level, but not av_location_level
- sorting is not based on fully concatenated location_level_id, but instead of the constituent parts so that full table scan isn't needed prior to sort. no sorting done within the views
@zack-rma
Copy link
Contributor Author

zack-rma commented Feb 13, 2026

To quantify the improvement in the view, I compared the execution plans for the level retrieval query from CDA between the original view and the new views. The tested query returned two stored constant level records.

When retrieving against the old views, approximately 800kb of temporary space is used. The total CPU cost is 1094, with hundreds of rows being accessed to achieve this result. This view also uses full outer joins.

When retrieving against the new views, no temporary space is used. The total CPU cost is 44, with only a few rows being accessed to achieve this result.

When run against the NWDP database export containing significantly more rows, the space usage of the original query was recorded using dozens of GB of space to retrieve the results. The new query achieves the same goal using an order of magnitude fewer resources.

Query 1:

select
   "v0" "OFFICE_ID",
   "v1" "LOCATION_LEVEL_ID",
   "v2" "ATTRIBUTE_ID",
   "v3" "DURATION_CODE",
   "v4" "EFFECTIVE_DATE_UTC",
   "v5" "CONNECTIONS",
   "v6" "DURATION_ID",
   "v7" "ATTR_UNIT_EN",
   "v8" "ATTR_VALUE_EN",
   "v9" "ATTR_UNIT_SI",
   "v10" "ATTR_VALUE_SI",
   "v11" "OFFICE_ID",
   "v12" "LOCATION_LEVEL_ID",
   "v13" "EXPIRATION_DATE",
   "v14" "LEVEL_DATE",
   "v15" "TSID",
   "v16" "CONSTANT_LEVEL",
   "v17" "INTERVAL_ORIGIN",
   "v18" "INTERPOLATE",
   "v19" "ATTRIBUTE_ID",
   "v20" "ATTRIBUTE_VALUE",
   "v21" "ATTRIBUTE_UNIT",
   "v22" "ATTRIBUTE_COMMENT",
   "v23" "LEVEL_UNIT",
   "v24" "LEVEL_COMMENT",
   "v25" "SEASONAL_LEVEL",
   "v26" "CALENDAR_INTERVAL",
   "v27" "TIME_INTERVAL",
   "v28" "CALENDAR_OFFSET",
   "v29" "TIME_OFFSET"
from (
        select
           "x"."v0",
           "x"."v1",
           "x"."v2",
           "x"."v3",
           "x"."v4",
           "x"."v5",
           "x"."v6",
           "x"."v7",
           "x"."v8",
           "x"."v9",
           "x"."v10",
           "x"."v11",
           "x"."v12",
           "x"."v13",
           "x"."v14",
           "x"."v15",
           "x"."v16",
           "x"."v17",
           "x"."v18",
           "x"."v19",
           "x"."v20",
           "x"."v21",
           "x"."v22",
           "x"."v23",
           "x"."v24",
           "x"."v25",
           "x"."v26",
           "x"."v27",
           "x"."v28",
           "x"."v29",
           rownum "rn"
        from (
                select distinct
                   "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."OFFICE_ID" "v0",
                   "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."LOCATION_LEVEL_ID" "v1",
                   "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."ATTRIBUTE_ID" "v2",
                   "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."DURATION_CODE" "v3",
                   "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."EFFECTIVE_DATE_UTC" "v4",
                   "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."CONNECTIONS" "v5",
                   "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."DURATION_ID" "v6",
                   "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."ATTR_UNIT_EN" "v7",
                   "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."ATTR_VALUE_EN" "v8",
                   "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."ATTR_UNIT_SI" "v9",
                   "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."ATTR_VALUE_SI" "v10",
                   "CWMS_20"."AV_LOCATION_LEVEL"."OFFICE_ID" "v11",
                   "CWMS_20"."AV_LOCATION_LEVEL"."LOCATION_LEVEL_ID" "v12",
                   "CWMS_20"."AV_LOCATION_LEVEL"."EXPIRATION_DATE" "v13",
                   "CWMS_20"."AV_LOCATION_LEVEL"."LEVEL_DATE" "v14",
                   "CWMS_20"."AV_LOCATION_LEVEL"."TSID" "v15",
                   "CWMS_20"."AV_LOCATION_LEVEL"."CONSTANT_LEVEL" "v16",
                   "CWMS_20"."AV_LOCATION_LEVEL"."INTERVAL_ORIGIN" "v17",
                   "CWMS_20"."AV_LOCATION_LEVEL"."INTERPOLATE" "v18",
                   "CWMS_20"."AV_LOCATION_LEVEL"."ATTRIBUTE_ID" "v19",
                   "CWMS_20"."AV_LOCATION_LEVEL"."ATTRIBUTE_VALUE" "v20",
                   "CWMS_20"."AV_LOCATION_LEVEL"."ATTRIBUTE_UNIT" "v21",
                   "CWMS_20"."AV_LOCATION_LEVEL"."ATTRIBUTE_COMMENT" "v22",
                   "CWMS_20"."AV_LOCATION_LEVEL"."LEVEL_UNIT" "v23",
                   "CWMS_20"."AV_LOCATION_LEVEL"."LEVEL_COMMENT" "v24",
                   "CWMS_20"."AV_LOCATION_LEVEL"."SEASONAL_LEVEL" "v25",
                   "CWMS_20"."AV_LOCATION_LEVEL"."CALENDAR_INTERVAL" "v26",
                   "CWMS_20"."AV_LOCATION_LEVEL"."TIME_INTERVAL" "v27",
                   "CWMS_20"."AV_LOCATION_LEVEL"."CALENDAR_OFFSET" "v28",
                   "CWMS_20"."AV_LOCATION_LEVEL"."TIME_OFFSET" "v29"
                from "CWMS_20"."AV_LOCATION_LEVEL"
                        full outer join "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"
                                        on "CWMS_20"."AV_LOCATION_LEVEL"."LOCATION_LEVEL_CODE" = "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."LOCATION_LEVEL_CODE"
                where (
                         (
                            "CWMS_20"."AV_LOCATION_LEVEL"."UNIT_SYSTEM" = 'SI'
                               or "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."LOCATION_LEVEL_ID" is not null
                            )
                            and (
                            "CWMS_20"."AV_LOCATION_LEVEL"."OFFICE_ID" = 'SPK'
                               or upper("CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."OFFICE_ID") = 'SPK'
                            )
                            and (
                            (regexp_like("CWMS_20"."AV_LOCATION_LEVEL"."LOCATION_LEVEL_ID", 'level_get_all.*', 'i'))
                               or (regexp_like("CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."LOCATION_LEVEL_ID", 'level_get_all.*', 'i'))
                            )
                            and (
                            "CWMS_20"."AV_LOCATION_LEVEL"."LEVEL_DATE" >= cast(timestamp '2023-05-31 17:00:00.0' as date)
                               or "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."EFFECTIVE_DATE_UTC" >= cast(timestamp '2023-05-31 17:00:00.0' as date)
                            )
                            and (
                            "CWMS_20"."AV_LOCATION_LEVEL"."LEVEL_DATE" < cast(timestamp '2023-06-01 17:00:00.0' as date)
                               or "CWMS_20"."AV_VIRTUAL_LOCATION_LEVEL"."EFFECTIVE_DATE_UTC" < cast(timestamp '2023-06-01 17:00:00.0' as date)
                            )
                         )
                order by
                   upper("v11"),
                   upper("v12"),
                   "v14",
                   "v28",
                   upper("v0"),
                   upper("v1"),
                   upper("v29"),
                   "v4"
             ) "x"
        where rownum <= (0 + 100)
     )
where "rn" > 0
order by "rn";

Explain Plan results:

-------------------------------------------------------------------------------------------------------------------------------------------------
| Id  | Operation                                                  | Name                       | Rows  | Bytes |TempSpc| Cost (%CPU)| Time     |
-------------------------------------------------------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT                                           |                            |   100 |  1463K|       |  1194   (1)| 00:00:01 |
|   1 |  SORT ORDER BY                                             |                            |   100 |  1463K|   808K|  1194   (1)| 00:00:01 |
|*  2 |   VIEW                                                     |                            |   100 |  1463K|       |   881   (1)| 00:00:01 |
|*  3 |    COUNT STOPKEY                                           |                            |       |       |       |            |          |
|   4 |     VIEW                                                   |                            |   127 |  1856K|       |   881   (1)| 00:00:01 |
|*  5 |      SORT ORDER BY STOPKEY                                 |                            |   127 |  1850K|  1024K|   881   (1)| 00:00:01 |
|   6 |       HASH UNIQUE                                          |                            |   127 |  1850K|  1024K|   483   (1)| 00:00:01 |
|*  7 |        VIEW                                                | VW_FOJ_0                   |   127 |  1850K|       |    86   (4)| 00:00:01 |
|*  8 |         HASH JOIN FULL OUTER                               |                            |   127 |  1860K|       |    86   (4)| 00:00:01 |
|   9 |          VIEW                                              | AV_VIRTUAL_LOCATION_LEVEL  |     1 |  4588 |       |    31   (7)| 00:00:01 |
|  10 |           NESTED LOOPS OUTER                               |                            |     1 |  4561 |       |    31   (7)| 00:00:01 |
|  11 |            NESTED LOOPS                                    |                            |     1 |   492 |       |    27   (8)| 00:00:01 |
|  12 |             NESTED LOOPS                                   |                            |     1 |   481 |       |    26   (8)| 00:00:01 |
|  13 |              NESTED LOOPS                                  |                            |     1 |   470 |       |    25   (8)| 00:00:01 |
|  14 |               NESTED LOOPS                                 |                            |     1 |   448 |       |    24   (9)| 00:00:01 |
|  15 |                NESTED LOOPS                                |                            |     1 |   440 |       |    23   (9)| 00:00:01 |
|  16 |                 NESTED LOOPS                               |                            |     1 |   427 |       |    22  (10)| 00:00:01 |
|* 17 |                  TABLE ACCESS FULL                         | AT_VIRTUAL_LOCATION_LEVEL  |     1 |   269 |       |     3   (0)| 00:00:01 |
|  18 |                  VIEW                                      |                            |     1 |   158 |       |    19  (11)| 00:00:01 |
|  19 |                   UNION ALL PUSHED PREDICATE               |                            |     3 |   222 |       |            |          |
|  20 |                    NESTED LOOPS                            |                            |     1 |    38 |       |     3   (0)| 00:00:01 |
|  21 |                     NESTED LOOPS                           |                            |     1 |    30 |       |     2   (0)| 00:00:01 |
|  22 |                      TABLE ACCESS BY INDEX ROWID           | AT_PHYSICAL_LOCATION       |     1 |    13 |       |     1   (0)| 00:00:01 |
|* 23 |                       INDEX UNIQUE SCAN                    | AT_PHYSICAL_LOCATION_PK    |     1 |       |       |     0   (0)| 00:00:01 |
|  24 |                      TABLE ACCESS BY INDEX ROWID           | AT_BASE_LOCATION           |     1 |    17 |       |     1   (0)| 00:00:01 |
|* 25 |                       INDEX UNIQUE SCAN                    | AT_BASE_LOCATION_PK        |     1 |       |       |     0   (0)| 00:00:01 |
|  26 |                     TABLE ACCESS BY INDEX ROWID            | CWMS_OFFICE                |     1 |     8 |       |     1   (0)| 00:00:01 |
|* 27 |                      INDEX UNIQUE SCAN                     | CWMS_OFFICE_PK             |     1 |       |       |     0   (0)| 00:00:01 |
|  28 |                    SORT UNIQUE                             |                            |     1 |    92 |       |     8  (13)| 00:00:01 |
|  29 |                     NESTED LOOPS                           |                            |     1 |    92 |       |     7   (0)| 00:00:01 |
|  30 |                      NESTED LOOPS                          |                            |     1 |    92 |       |     7   (0)| 00:00:01 |
|  31 |                       NESTED LOOPS                         |                            |     1 |    73 |       |     6   (0)| 00:00:01 |
|  32 |                        NESTED LOOPS                        |                            |     1 |    51 |       |     5   (0)| 00:00:01 |
|  33 |                         NESTED LOOPS                       |                            |     1 |    38 |       |     3   (0)| 00:00:01 |
|  34 |                          NESTED LOOPS                      |                            |     1 |    30 |       |     2   (0)| 00:00:01 |
|* 35 |                           TABLE ACCESS BY INDEX ROWID      | AT_PHYSICAL_LOCATION       |     1 |    13 |       |     1   (0)| 00:00:01 |
|* 36 |                            INDEX UNIQUE SCAN               | AT_PHYSICAL_LOCATION_PK    |     1 |       |       |     0   (0)| 00:00:01 |
|  37 |                           TABLE ACCESS BY INDEX ROWID      | AT_BASE_LOCATION           |     1 |    17 |       |     1   (0)| 00:00:01 |
|* 38 |                            INDEX UNIQUE SCAN               | AT_BASE_LOCATION_PK        |     1 |       |       |     0   (0)| 00:00:01 |
|  39 |                          TABLE ACCESS BY INDEX ROWID       | CWMS_OFFICE                |     1 |     8 |       |     1   (0)| 00:00:01 |
|* 40 |                           INDEX UNIQUE SCAN                | CWMS_OFFICE_PK             |     1 |       |       |     0   (0)| 00:00:01 |
|* 41 |                         TABLE ACCESS BY INDEX ROWID BATCHED| AT_LOC_GROUP_ASSIGNMENT    |     1 |    13 |       |     2   (0)| 00:00:01 |
|* 42 |                          INDEX RANGE SCAN                  | AT_LOC_GROUP_ASSIGNMENT_PK |     2 |       |       |     1   (0)| 00:00:01 |
|  43 |                        TABLE ACCESS BY INDEX ROWID         | AT_LOC_GROUP               |     1 |    22 |       |     1   (0)| 00:00:01 |
|* 44 |                         INDEX UNIQUE SCAN                  | AT_LOC_GROUPS_PK           |     1 |       |       |     0   (0)| 00:00:01 |
|* 45 |                       INDEX UNIQUE SCAN                    | AT_LOC_CATEGORY_NAME_PK    |     1 |       |       |     0   (0)| 00:00:01 |
|  46 |                      TABLE ACCESS BY INDEX ROWID           | AT_LOC_CATEGORY            |     1 |    19 |       |     1   (0)| 00:00:01 |
|  47 |                    SORT UNIQUE                             |                            |     1 |    92 |       |     8  (13)| 00:00:01 |
|  48 |                     NESTED LOOPS                           |                            |     1 |    92 |       |     7   (0)| 00:00:01 |
|  49 |                      NESTED LOOPS                          |                            |     1 |    92 |       |     7   (0)| 00:00:01 |
|  50 |                       NESTED LOOPS                         |                            |     1 |    73 |       |     6   (0)| 00:00:01 |
|  51 |                        NESTED LOOPS                        |                            |     1 |    51 |       |     5   (0)| 00:00:01 |
|  52 |                         NESTED LOOPS                       |                            |     1 |    38 |       |     3   (0)| 00:00:01 |
|  53 |                          NESTED LOOPS                      |                            |     1 |    30 |       |     2   (0)| 00:00:01 |
|  54 |                           TABLE ACCESS BY INDEX ROWID      | AT_PHYSICAL_LOCATION       |     1 |    13 |       |     1   (0)| 00:00:01 |
|* 55 |                            INDEX UNIQUE SCAN               | AT_PHYSICAL_LOCATION_PK    |     1 |       |       |     0   (0)| 00:00:01 |
|  56 |                           TABLE ACCESS BY INDEX ROWID      | AT_BASE_LOCATION           |     1 |    17 |       |     1   (0)| 00:00:01 |
|* 57 |                            INDEX UNIQUE SCAN               | AT_BASE_LOCATION_PK        |     1 |       |       |     0   (0)| 00:00:01 |
|  58 |                          TABLE ACCESS BY INDEX ROWID       | CWMS_OFFICE                |     1 |     8 |       |     1   (0)| 00:00:01 |
|* 59 |                           INDEX UNIQUE SCAN                | CWMS_OFFICE_PK             |     1 |       |       |     0   (0)| 00:00:01 |
|* 60 |                         TABLE ACCESS BY INDEX ROWID BATCHED| AT_LOC_GROUP_ASSIGNMENT    |     1 |    13 |       |     2   (0)| 00:00:01 |
|* 61 |                          INDEX RANGE SCAN                  | AT_LOC_GROUP_ASSIGNMENT_PK |     2 |       |       |     1   (0)| 00:00:01 |
|  62 |                        TABLE ACCESS BY INDEX ROWID         | AT_LOC_GROUP               |     1 |    22 |       |     1   (0)| 00:00:01 |
|* 63 |                         INDEX UNIQUE SCAN                  | AT_LOC_GROUPS_PK           |     1 |       |       |     0   (0)| 00:00:01 |
|* 64 |                       INDEX UNIQUE SCAN                    | AT_LOC_CATEGORY_NAME_PK    |     1 |       |       |     0   (0)| 00:00:01 |
|  65 |                      TABLE ACCESS BY INDEX ROWID           | AT_LOC_CATEGORY            |     1 |    19 |       |     1   (0)| 00:00:01 |
|  66 |                 TABLE ACCESS BY INDEX ROWID                | CWMS_DURATION              |     1 |    13 |       |     1   (0)| 00:00:01 |
|* 67 |                  INDEX UNIQUE SCAN                         | CWMS_DURATION_PK           |     1 |       |       |     0   (0)| 00:00:01 |
|  68 |                TABLE ACCESS BY INDEX ROWID                 | CWMS_PARAMETER_TYPE        |     1 |     8 |       |     1   (0)| 00:00:01 |
|* 69 |                 INDEX UNIQUE SCAN                          | CWMS_PARAMETER_TYPE_PK     |     1 |       |       |     0   (0)| 00:00:01 |
|  70 |               TABLE ACCESS BY INDEX ROWID                  | AT_SPECIFIED_LEVEL         |     1 |    22 |       |     1   (0)| 00:00:01 |
|* 71 |                INDEX UNIQUE SCAN                           | AT_SPECIFIED_LEVEL_PK      |     1 |       |       |     0   (0)| 00:00:01 |
|  72 |              TABLE ACCESS BY INDEX ROWID                   | AT_PARAMETER               |     1 |    11 |       |     1   (0)| 00:00:01 |
|* 73 |               INDEX UNIQUE SCAN                            | AT_PARAMETER_PK            |     1 |       |       |     0   (0)| 00:00:01 |
|  74 |             TABLE ACCESS BY INDEX ROWID                    | CWMS_BASE_PARAMETER        |     1 |    11 |       |     1   (0)| 00:00:01 |
|* 75 |              INDEX UNIQUE SCAN                             | CWMS_BASE_PARAMETER_PK     |     1 |       |       |     0   (0)| 00:00:01 |
|  76 |            VIEW PUSHED PREDICATE                           |                            |     1 |  4069 |       |     4   (0)| 00:00:01 |
|* 77 |             FILTER                                         |                            |       |       |       |            |          |
|  78 |              NESTED LOOPS                                  |                            |     1 |    43 |       |     4   (0)| 00:00:01 |
|  79 |               NESTED LOOPS                                 |                            |     1 |    32 |       |     3   (0)| 00:00:01 |
|  80 |                NESTED LOOPS                                |                            |     1 |    21 |       |     2   (0)| 00:00:01 |
|  81 |                 TABLE ACCESS BY INDEX ROWID                | CWMS_DURATION              |     1 |    13 |       |     1   (0)| 00:00:01 |
|* 82 |                  INDEX UNIQUE SCAN                         | CWMS_DURATION_PK           |     1 |       |       |     0   (0)| 00:00:01 |
|  83 |                 TABLE ACCESS BY INDEX ROWID                | CWMS_PARAMETER_TYPE        |     1 |     8 |       |     1   (0)| 00:00:01 |
|* 84 |                  INDEX UNIQUE SCAN                         | CWMS_PARAMETER_TYPE_PK     |     1 |       |       |     0   (0)| 00:00:01 |
|  85 |                TABLE ACCESS BY INDEX ROWID                 | AT_PARAMETER               |     1 |    11 |       |     1   (0)| 00:00:01 |
|* 86 |                 INDEX UNIQUE SCAN                          | AT_PARAMETER_PK            |     1 |       |       |     0   (0)| 00:00:01 |
|  87 |               TABLE ACCESS BY INDEX ROWID                  | CWMS_BASE_PARAMETER        |     1 |    11 |       |     1   (0)| 00:00:01 |
|* 88 |                INDEX UNIQUE SCAN                           | CWMS_BASE_PARAMETER_PK     |     1 |       |       |     0   (0)| 00:00:01 |
|  89 |          VIEW                                              | AV_LOCATION_LEVEL          |   127 |  1291K|       |    55   (2)| 00:00:01 |
|  90 |           TEMP TABLE TRANSFORMATION                        |                            |       |       |       |            |          |
|  91 |            LOAD AS SELECT (CURSOR DURATION MEMORY)         | SYS_TEMP_0FD9D665F_10329B8 |       |       |       |            |          |
|  92 |             FAST DUAL                                      |                            |     1 |       |       |     2   (0)| 00:00:01 |
|  93 |             FAST DUAL                                      |                            |     1 |       |       |     2   (0)| 00:00:01 |
|  94 |             MERGE JOIN CARTESIAN                           |                            |     4 |   400 |       |    22   (5)| 00:00:01 |
|  95 |              NESTED LOOPS OUTER                            |                            |     2 |   192 |       |    14   (8)| 00:00:01 |
|  96 |               NESTED LOOPS OUTER                           |                            |     2 |   174 |       |    12   (9)| 00:00:01 |
|  97 |                NESTED LOOPS OUTER                          |                            |     2 |   144 |       |    10  (10)| 00:00:01 |
|  98 |                 NESTED LOOPS OUTER                         |                            |     2 |   126 |       |     8  (13)| 00:00:01 |
|  99 |                  NESTED LOOPS OUTER                        |                            |     2 |    96 |       |     6  (17)| 00:00:01 |
| 100 |                   NESTED LOOPS OUTER                       |                            |     2 |    74 |       |     4  (25)| 00:00:01 |
| 101 |                    VIEW                                    |                            |     2 |    52 |       |     4  (25)| 00:00:01 |
| 102 |                     HASH UNIQUE                            |                            |     2 |    32 |       |     4  (25)| 00:00:01 |
| 103 |                      TABLE ACCESS FULL                     | AT_LOCATION_LEVEL          |     8 |   128 |       |     3   (0)| 00:00:01 |
| 104 |                    TABLE ACCESS BY INDEX ROWID             | AT_PARAMETER               |     1 |    11 |       |     0   (0)| 00:00:01 |
|*105 |                     INDEX UNIQUE SCAN                      | AT_PARAMETER_PK            |     1 |       |       |     0   (0)| 00:00:01 |
| 106 |                   TABLE ACCESS BY INDEX ROWID              | AT_PARAMETER               |     1 |    11 |       |     1   (0)| 00:00:01 |
|*107 |                    INDEX UNIQUE SCAN                       | AT_PARAMETER_PK            |     1 |       |       |     0   (0)| 00:00:01 |
| 108 |                  TABLE ACCESS BY INDEX ROWID               | CWMS_BASE_PARAMETER        |     1 |    15 |       |     1   (0)| 00:00:01 |
|*109 |                   INDEX UNIQUE SCAN                        | CWMS_BASE_PARAMETER_PK     |     1 |       |       |     0   (0)| 00:00:01 |
| 110 |                 TABLE ACCESS BY INDEX ROWID                | CWMS_UNIT                  |     1 |     9 |       |     1   (0)| 00:00:01 |
|*111 |                  INDEX UNIQUE SCAN                         | CWMS_UNIT_PK               |     1 |       |       |     0   (0)| 00:00:01 |
| 112 |                TABLE ACCESS BY INDEX ROWID                 | CWMS_BASE_PARAMETER        |     1 |    15 |       |     1   (0)| 00:00:01 |
|*113 |                 INDEX UNIQUE SCAN                          | CWMS_BASE_PARAMETER_PK     |     1 |       |       |     0   (0)| 00:00:01 |
| 114 |               TABLE ACCESS BY INDEX ROWID                  | CWMS_UNIT                  |     1 |     9 |       |     1   (0)| 00:00:01 |
|*115 |                INDEX UNIQUE SCAN                           | CWMS_UNIT_PK               |     1 |       |       |     0   (0)| 00:00:01 |
| 116 |              BUFFER SORT                                   |                            |     2 |     8 |       |    21   (5)| 00:00:01 |
| 117 |               VIEW                                         |                            |     2 |     8 |       |     4   (0)| 00:00:01 |
| 118 |                UNION-ALL                                   |                            |     2 |       |       |            |          |
| 119 |                 FAST DUAL                                  |                            |     1 |       |       |     2   (0)| 00:00:01 |
| 120 |                 FAST DUAL                                  |                            |     1 |       |       |     2   (0)| 00:00:01 |
|*121 |            HASH JOIN RIGHT OUTER                           |                            |   127 |  1075K|       |    29   (0)| 00:00:01 |
| 122 |             TABLE ACCESS FULL                              | AT_SEASONAL_LOCATION_LEVEL |    42 |  1302 |       |     3   (0)| 00:00:01 |
|*123 |             HASH JOIN RIGHT OUTER                          |                            |    23 |   194K|       |    26   (0)| 00:00:01 |
|*124 |              TABLE ACCESS FULL                             | AT_LOC_LVL_LABEL           |     1 |   130 |       |     2   (0)| 00:00:01 |
|*125 |              HASH JOIN RIGHT OUTER                         |                            |    23 |   191K|       |    24   (0)| 00:00:01 |
| 126 |               TABLE ACCESS FULL                            | AT_LOC_LVL_SOURCE          |     1 |   117 |       |     2   (0)| 00:00:01 |
|*127 |               HASH JOIN OUTER                              |                            |    23 |   188K|       |    22   (0)| 00:00:01 |
|*128 |                HASH JOIN OUTER                             |                            |     8 |  2136 |       |    20   (0)| 00:00:01 |
|*129 |                 HASH JOIN OUTER                            |                            |     8 |  2072 |       |    18   (0)| 00:00:01 |
|*130 |                  HASH JOIN OUTER                           |                            |     8 |  1936 |       |    15   (0)| 00:00:01 |
|*131 |                   HASH JOIN OUTER                          |                            |     8 |  1832 |       |    12   (0)| 00:00:01 |
|*132 |                    HASH JOIN OUTER                         |                            |     8 |  1656 |       |     9   (0)| 00:00:01 |
|*133 |                     HASH JOIN OUTER                        |                            |     8 |  1552 |       |     7   (0)| 00:00:01 |
| 134 |                      NESTED LOOPS OUTER                    |                            |     8 |  1488 |       |     5   (0)| 00:00:01 |
| 135 |                       NESTED LOOPS OUTER                   |                            |     8 |   672 |       |     3   (0)| 00:00:01 |
| 136 |                        NESTED LOOPS OUTER                  |                            |     8 |   568 |       |     3   (0)| 00:00:01 |
| 137 |                         TABLE ACCESS FULL                  | AT_LOCATION_LEVEL          |     8 |   504 |       |     3   (0)| 00:00:01 |
| 138 |                         TABLE ACCESS BY INDEX ROWID        | CWMS_PARAMETER_TYPE        |     1 |     8 |       |     0   (0)| 00:00:01 |
|*139 |                          INDEX UNIQUE SCAN                 | CWMS_PARAMETER_TYPE_PK     |     1 |       |       |     0   (0)| 00:00:01 |
| 140 |                        TABLE ACCESS BY INDEX ROWID         | CWMS_DURATION              |     1 |    13 |       |     0   (0)| 00:00:01 |
|*141 |                         INDEX UNIQUE SCAN                  | CWMS_DURATION_PK           |     1 |       |       |     0   (0)| 00:00:01 |
| 142 |                       TABLE ACCESS BY INDEX ROWID          | AT_CWMS_TS_ID              |     1 |   102 |       |     1   (0)| 00:00:01 |
|*143 |                        INDEX UNIQUE SCAN                   | AT_CWMS_TS_ID_PK           |     1 |       |       |     0   (0)| 00:00:01 |
| 144 |                      TABLE ACCESS BY INDEX ROWID BATCHED   | CWMS_PARAMETER_TYPE        |     7 |    56 |       |     2   (0)| 00:00:01 |
|*145 |                       INDEX RANGE SCAN                     | CWMS_PARAMETER_TYPE_PK     |     7 |       |       |     1   (0)| 00:00:01 |
| 146 |                     TABLE ACCESS BY INDEX ROWID BATCHED    | CWMS_DURATION              |    61 |   793 |       |     2   (0)| 00:00:01 |
|*147 |                      INDEX RANGE SCAN                      | CWMS_DURATION_PK           |    61 |       |       |     1   (0)| 00:00:01 |
| 148 |                    TABLE ACCESS FULL                       | AT_SPECIFIED_LEVEL         |    38 |   836 |       |     3   (0)| 00:00:01 |
| 149 |                   TABLE ACCESS FULL                        | AT_PHYSICAL_LOCATION       |     9 |   117 |       |     3   (0)| 00:00:01 |
| 150 |                  TABLE ACCESS FULL                         | AT_BASE_LOCATION           |     7 |   119 |       |     3   (0)| 00:00:01 |
| 151 |                 VIEW                                       | index$_join$_148           |    68 |   544 |       |     2   (0)| 00:00:01 |
|*152 |                  HASH JOIN                                 |                            |       |       |       |            |          |
| 153 |                   INDEX FAST FULL SCAN                     | CWMS_OFFICE_PK             |    68 |   544 |       |     1   (0)| 00:00:01 |
| 154 |                   INDEX FAST FULL SCAN                     | CWMS_OFFICE_UK             |    68 |   544 |       |     1   (0)| 00:00:01 |
| 155 |                VIEW                                        |                            |     4 | 32520 |       |     2   (0)| 00:00:01 |
| 156 |                 NESTED LOOPS OUTER                         |                            |     4 | 32456 |       |     2   (0)| 00:00:01 |
| 157 |                  NESTED LOOPS OUTER                        |                            |     4 | 32344 |       |     2   (0)| 00:00:01 |
| 158 |                   VIEW                                     |                            |     4 | 32232 |       |     2   (0)| 00:00:01 |
| 159 |                    TABLE ACCESS FULL                       | SYS_TEMP_0FD9D665F_10329B8 |     4 |   400 |       |     2   (0)| 00:00:01 |
|*160 |                   INDEX UNIQUE SCAN                        | CWMS_UNIT_CONVERSION_PK    |     1 |    28 |       |     0   (0)| 00:00:01 |
|*161 |                  INDEX UNIQUE SCAN                         | CWMS_UNIT_CONVERSION_PK    |     1 |    28 |       |     0   (0)| 00:00:01 |
-------------------------------------------------------------------------------------------------------------------------------------------------

New Query:

select
      "v0" "ATTRIBUTE_ID",
      "v1" "DURATION_ID",
      "v2" "CONNECTIONS",
      "v3" "DURATION_ID",
      "v4" "OFFICE_ID",
      "v5" "LOCATION_LEVEL_ID",
      "v6" "EXPIRATION_DATE",
      "v7" "LOCATION_LEVEL_DATE",
      "v8" "TSID",
      "v9" "CONSTANT_LEVEL_EN",
      "v10" "CONSTANT_LEVEL_SI",
      "v11" "INTERVAL_ORIGIN",
      "v12" "INTERPOLATE",
      "v13" "ATTRIBUTE_VALUE_EN",
      "v14" "ATTRIBUTE_UNIT_EN",
      "v15" "ATTRIBUTE_UNIT_SI",
      "v17" "LEVEL_UNIT_EN",
      "v18" "LEVEL_UNIT_SI",
      "v19" "LOCATION_LEVEL_COMMENT",
      "v20" "SEASONAL_VALUE_EN",
      "v21" "SEASONAL_VALUE_SI",
      "v22" "CALENDAR_INTERVAL",
      "v23" "TIME_INTERVAL",
      "v24" "CALENDAR_OFFSET",
      "v25" "TIME_OFFSET"
   from (
           select
              "x"."v0",
              "x"."v1",
              "x"."v2",
              "x"."v3",
              "x"."v4",
              "x"."v5",
              "x"."v6",
              "x"."v7",
              "x"."v8",
              "x"."v9",
              "x"."v10",
              "x"."v11",
              "x"."v12",
              "x"."v13",
              "x"."v14",
              "x"."v15",
              "x"."v17",
              "x"."v18",
              "x"."v19",
              "x"."v20",
              "x"."v21",
              "x"."v22",
              "x"."v23",
              "x"."v24",
              "x"."v25",
              rownum "rn"
           from (
                   select distinct
                      "CWMS_20"."AV_LOCATION_LEVEL_REF"."ATTRIBUTE_ID" "v0",
                      "CWMS_20"."AV_LOCATION_LEVEL_REF"."DURATION_ID" "v1",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."CONNECTIONS" "v2",
                      "CWMS_20"."AV_LOCATION_LEVEL_REF"."DURATION_ID" "v3",
                      "CWMS_20"."AV_LOCATION_LEVEL_REF"."OFFICE_ID" "v4",
                      "CWMS_20"."AV_LOCATION_LEVEL_REF"."LOCATION_LEVEL_ID" "v5",
                      "CWMS_20"."AV_LOCATION_LEVEL_REF"."EXPIRATION_DATE" "v6",
                      "CWMS_20"."AV_LOCATION_LEVEL_REF"."LOCATION_LEVEL_DATE" "v7",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."TSID" "v8",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."CONSTANT_LEVEL_EN" "v9",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."CONSTANT_LEVEL_SI" "v10",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."INTERVAL_ORIGIN" "v11",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."INTERPOLATE" "v12",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."ATTRIBUTE_VALUE_EN" "v13",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."ATTRIBUTE_UNIT_EN" "v14",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."ATTRIBUTE_UNIT_SI" "v15",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."LEVEL_UNIT_EN" "v17",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."LEVEL_UNIT_SI" "v18",
                      "CWMS_20"."AV_LOCATION_LEVEL_REF"."LOCATION_LEVEL_COMMENT" "v19",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."SEASONAL_VALUE_EN" "v20",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."SEASONAL_VALUE_SI" "v21",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."CALENDAR_INTERVAL" "v22",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."TIME_INTERVAL" "v23",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."CALENDAR_OFFSET" "v24",
                      "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."TIME_OFFSET" "v25"
                   from "CWMS_20"."AV_LOCATION_LEVEL_REF"
                        join "CWMS_20"."AV_LOCATION_LEVEL_VALUES"
                            on "CWMS_20"."AV_LOCATION_LEVEL_REF"."LOCATION_LEVEL_CODE" = "CWMS_20"."AV_LOCATION_LEVEL_VALUES"."LOCATION_LEVEL_CODE"
                   where (
                            (
                               "CWMS_20"."AV_LOCATION_LEVEL_REF"."LOCATION_LEVEL_ID" is not null
                                  and (
                                  "CWMS_20"."AV_LOCATION_LEVEL_REF"."OFFICE_ID" = 'SPK'
                                     or upper("CWMS_20"."AV_LOCATION_LEVEL_REF"."OFFICE_ID") = 'SPK'
                                  )
                                  and (
                                  regexp_like("CWMS_20"."AV_LOCATION_LEVEL_REF"."LOCATION_LEVEL_ID", 'level_get_all.*',
                                              'i')
                                  )
                                  and (
                                  "CWMS_20"."AV_LOCATION_LEVEL_REF"."LOCATION_LEVEL_DATE" >=
                                  cast(timestamp '2023-05-31 17:00:00.0' as date)
                                  )
                                  and (
                                  "CWMS_20"."AV_LOCATION_LEVEL_REF"."LOCATION_LEVEL_DATE" <
                                  cast(timestamp '2023-06-01 17:00:00.0' as date)
                                  )
                               )
                   )
                   order by
                      upper("v4"),
                      upper("v5"),
                      "v7",
                      "v24",
                      upper("v25")
                ) "x"
           where rownum <= (0 + 100)
        )
   where "rn" > 0
   order by "rn";

Explain Plan results:

---------------------------------------------------------------------------------------------------------------------------------
| Id  | Operation                                          | Name                       | Rows  | Bytes | Cost (%CPU)| Time     |
---------------------------------------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT                                   |                            |     1 | 14416 |    44  (10)| 00:00:01 |
|   1 |  SORT ORDER BY                                     |                            |     1 | 14416 |    44  (10)| 00:00:01 |
|*  2 |   VIEW                                             |                            |     1 | 14416 |    43   (7)| 00:00:01 |
|*  3 |    COUNT STOPKEY                                   |                            |       |       |            |          |
|   4 |     VIEW                                           |                            |     1 | 14403 |    43   (7)| 00:00:01 |
|*  5 |      SORT ORDER BY STOPKEY                         |                            |     1 | 14406 |    43   (7)| 00:00:01 |
|   6 |       HASH UNIQUE                                  |                            |     1 | 14406 |    42   (5)| 00:00:01 |
|*  7 |        HASH JOIN                                   |                            |     1 | 14406 |    41   (3)| 00:00:01 |
|   8 |         VIEW                                       | AV_LOCATION_LEVEL_REF      |     2 |  8360 |    27   (0)| 00:00:01 |
|   9 |          UNION-ALL                                 |                            |     2 |   620 |            |          |
|* 10 |           FILTER                                   |                            |       |       |            |          |
|  11 |            NESTED LOOPS                            |                            |     1 |   209 |    12   (0)| 00:00:01 |
|  12 |             NESTED LOOPS                           |                            |     1 |   209 |    12   (0)| 00:00:01 |
|  13 |              NESTED LOOPS OUTER                    |                            |     1 |   201 |    11   (0)| 00:00:01 |
|  14 |               NESTED LOOPS                         |                            |     1 |   193 |    11   (0)| 00:00:01 |
|  15 |                NESTED LOOPS                        |                            |     1 |   182 |    10   (0)| 00:00:01 |
|  16 |                 NESTED LOOPS OUTER                 |                            |     1 |   171 |     9   (0)| 00:00:01 |
|  17 |                  NESTED LOOPS OUTER                |                            |     1 |   160 |     8   (0)| 00:00:01 |
|  18 |                   NESTED LOOPS                     |                            |     1 |   149 |     8   (0)| 00:00:01 |
|  19 |                    NESTED LOOPS OUTER              |                            |     1 |   136 |     7   (0)| 00:00:01 |
|  20 |                     NESTED LOOPS                   |                            |     1 |   123 |     7   (0)| 00:00:01 |
|  21 |                      NESTED LOOPS                  |                            |     1 |   101 |     6   (0)| 00:00:01 |
|  22 |                       NESTED LOOPS                 |                            |     1 |    93 |     5   (0)| 00:00:01 |
|  23 |                        NESTED LOOPS                |                            |     1 |    76 |     4   (0)| 00:00:01 |
|* 24 |                         TABLE ACCESS FULL          | AT_LOCATION_LEVEL          |     1 |    63 |     3   (0)| 00:00:01 |
|  25 |                         TABLE ACCESS BY INDEX ROWID| AT_PHYSICAL_LOCATION       |     1 |    13 |     1   (0)| 00:00:01 |
|* 26 |                          INDEX UNIQUE SCAN         | AT_PHYSICAL_LOCATION_PK    |     1 |       |     0   (0)| 00:00:01 |
|  27 |                        TABLE ACCESS BY INDEX ROWID | AT_BASE_LOCATION           |     1 |    17 |     1   (0)| 00:00:01 |
|* 28 |                         INDEX UNIQUE SCAN          | AT_BASE_LOCATION_PK        |     1 |       |     0   (0)| 00:00:01 |
|* 29 |                       TABLE ACCESS BY INDEX ROWID  | CWMS_OFFICE                |     1 |     8 |     1   (0)| 00:00:01 |
|* 30 |                        INDEX UNIQUE SCAN           | CWMS_OFFICE_PK             |     1 |       |     0   (0)| 00:00:01 |
|  31 |                      TABLE ACCESS BY INDEX ROWID   | AT_SPECIFIED_LEVEL         |     1 |    22 |     1   (0)| 00:00:01 |
|* 32 |                       INDEX UNIQUE SCAN            | AT_SPECIFIED_LEVEL_PK      |     1 |       |     0   (0)| 00:00:01 |
|  33 |                     TABLE ACCESS BY INDEX ROWID    | CWMS_DURATION              |     1 |    13 |     0   (0)| 00:00:01 |
|* 34 |                      INDEX UNIQUE SCAN             | CWMS_DURATION_PK           |     1 |       |     0   (0)| 00:00:01 |
|  35 |                    TABLE ACCESS BY INDEX ROWID     | CWMS_DURATION              |     1 |    13 |     1   (0)| 00:00:01 |
|* 36 |                     INDEX UNIQUE SCAN              | CWMS_DURATION_PK           |     1 |       |     0   (0)| 00:00:01 |
|  37 |                   TABLE ACCESS BY INDEX ROWID      | AT_PARAMETER               |     1 |    11 |     0   (0)| 00:00:01 |
|* 38 |                    INDEX UNIQUE SCAN               | AT_PARAMETER_PK            |     1 |       |     0   (0)| 00:00:01 |
|  39 |                  TABLE ACCESS BY INDEX ROWID       | CWMS_BASE_PARAMETER        |     1 |    11 |     1   (0)| 00:00:01 |
|* 40 |                   INDEX UNIQUE SCAN                | CWMS_BASE_PARAMETER_PK     |     1 |       |     0   (0)| 00:00:01 |
|  41 |                 TABLE ACCESS BY INDEX ROWID        | AT_PARAMETER               |     1 |    11 |     1   (0)| 00:00:01 |
|* 42 |                  INDEX UNIQUE SCAN                 | AT_PARAMETER_PK            |     1 |       |     0   (0)| 00:00:01 |
|  43 |                TABLE ACCESS BY INDEX ROWID         | CWMS_BASE_PARAMETER        |     1 |    11 |     1   (0)| 00:00:01 |
|* 44 |                 INDEX UNIQUE SCAN                  | CWMS_BASE_PARAMETER_PK     |     1 |       |     0   (0)| 00:00:01 |
|  45 |               TABLE ACCESS BY INDEX ROWID          | CWMS_PARAMETER_TYPE        |     1 |     8 |     0   (0)| 00:00:01 |
|* 46 |                INDEX UNIQUE SCAN                   | CWMS_PARAMETER_TYPE_PK     |     1 |       |     0   (0)| 00:00:01 |
|* 47 |              INDEX UNIQUE SCAN                     | CWMS_PARAMETER_TYPE_PK     |     1 |       |     0   (0)| 00:00:01 |
|* 48 |             TABLE ACCESS BY INDEX ROWID            | CWMS_PARAMETER_TYPE        |     1 |     8 |     1   (0)| 00:00:01 |
|* 49 |           FILTER                                   |                            |       |       |            |          |
|  50 |            NESTED LOOPS                            |                            |     1 |   411 |    15   (0)| 00:00:01 |
|  51 |             NESTED LOOPS                           |                            |     1 |   411 |    15   (0)| 00:00:01 |
|  52 |              NESTED LOOPS                          |                            |     1 |   389 |    14   (0)| 00:00:01 |
|  53 |               NESTED LOOPS                         |                            |     1 |   376 |    13   (0)| 00:00:01 |
|  54 |                NESTED LOOPS                        |                            |     1 |   368 |    12   (0)| 00:00:01 |
|  55 |                 NESTED LOOPS                       |                            |     1 |   357 |    11   (0)| 00:00:01 |
|  56 |                  NESTED LOOPS OUTER                |                            |     1 |   346 |    10   (0)| 00:00:01 |
|  57 |                   NESTED LOOPS OUTER               |                            |     1 |   335 |     9   (0)| 00:00:01 |
|  58 |                    NESTED LOOPS OUTER              |                            |     1 |   324 |     8   (0)| 00:00:01 |
|  59 |                     NESTED LOOPS OUTER             |                            |     1 |   316 |     7   (0)| 00:00:01 |
|  60 |                      NESTED LOOPS                  |                            |     1 |   303 |     6   (0)| 00:00:01 |
|  61 |                       NESTED LOOPS                 |                            |     1 |   295 |     5   (0)| 00:00:01 |
|  62 |                        NESTED LOOPS                |                            |     1 |   278 |     4   (0)| 00:00:01 |
|* 63 |                         TABLE ACCESS FULL          | AT_VIRTUAL_LOCATION_LEVEL  |     1 |   265 |     3   (0)| 00:00:01 |
|  64 |                         TABLE ACCESS BY INDEX ROWID| AT_PHYSICAL_LOCATION       |     1 |    13 |     1   (0)| 00:00:01 |
|* 65 |                          INDEX UNIQUE SCAN         | AT_PHYSICAL_LOCATION_PK    |     1 |       |     0   (0)| 00:00:01 |
|  66 |                        TABLE ACCESS BY INDEX ROWID | AT_BASE_LOCATION           |     1 |    17 |     1   (0)| 00:00:01 |
|* 67 |                         INDEX UNIQUE SCAN          | AT_BASE_LOCATION_PK        |     1 |       |     0   (0)| 00:00:01 |
|* 68 |                       TABLE ACCESS BY INDEX ROWID  | CWMS_OFFICE                |     1 |     8 |     1   (0)| 00:00:01 |
|* 69 |                        INDEX UNIQUE SCAN           | CWMS_OFFICE_PK             |     1 |       |     0   (0)| 00:00:01 |
|  70 |                      TABLE ACCESS BY INDEX ROWID   | CWMS_DURATION              |     1 |    13 |     1   (0)| 00:00:01 |
|* 71 |                       INDEX UNIQUE SCAN            | CWMS_DURATION_PK           |     1 |       |     0   (0)| 00:00:01 |
|  72 |                     TABLE ACCESS BY INDEX ROWID    | CWMS_PARAMETER_TYPE        |     1 |     8 |     1   (0)| 00:00:01 |
|* 73 |                      INDEX UNIQUE SCAN             | CWMS_PARAMETER_TYPE_PK     |     1 |       |     0   (0)| 00:00:01 |
|  74 |                    TABLE ACCESS BY INDEX ROWID     | AT_PARAMETER               |     1 |    11 |     1   (0)| 00:00:01 |
|* 75 |                     INDEX UNIQUE SCAN              | AT_PARAMETER_PK            |     1 |       |     0   (0)| 00:00:01 |
|  76 |                   TABLE ACCESS BY INDEX ROWID      | CWMS_BASE_PARAMETER        |     1 |    11 |     1   (0)| 00:00:01 |
|* 77 |                    INDEX UNIQUE SCAN               | CWMS_BASE_PARAMETER_PK     |     1 |       |     0   (0)| 00:00:01 |
|  78 |                  TABLE ACCESS BY INDEX ROWID       | AT_PARAMETER               |     1 |    11 |     1   (0)| 00:00:01 |
|* 79 |                   INDEX UNIQUE SCAN                | AT_PARAMETER_PK            |     1 |       |     0   (0)| 00:00:01 |
|  80 |                 TABLE ACCESS BY INDEX ROWID        | CWMS_BASE_PARAMETER        |     1 |    11 |     1   (0)| 00:00:01 |
|* 81 |                  INDEX UNIQUE SCAN                 | CWMS_BASE_PARAMETER_PK     |     1 |       |     0   (0)| 00:00:01 |
|  82 |                TABLE ACCESS BY INDEX ROWID         | CWMS_PARAMETER_TYPE        |     1 |     8 |     1   (0)| 00:00:01 |
|* 83 |                 INDEX UNIQUE SCAN                  | CWMS_PARAMETER_TYPE_PK     |     1 |       |     0   (0)| 00:00:01 |
|  84 |               TABLE ACCESS BY INDEX ROWID          | CWMS_DURATION              |     1 |    13 |     1   (0)| 00:00:01 |
|* 85 |                INDEX UNIQUE SCAN                   | CWMS_DURATION_PK           |     1 |       |     0   (0)| 00:00:01 |
|* 86 |              INDEX UNIQUE SCAN                     | AT_SPECIFIED_LEVEL_PK      |     1 |       |     0   (0)| 00:00:01 |
|* 87 |             TABLE ACCESS BY INDEX ROWID            | AT_SPECIFIED_LEVEL         |     1 |    22 |     1   (0)| 00:00:01 |
|  88 |         VIEW                                       | VW_FOJ_0                   |    44 |   439K|    14   (8)| 00:00:01 |
|* 89 |          HASH JOIN FULL OUTER                      |                            |    44 |   440K|    14   (8)| 00:00:01 |
|  90 |           VIEW                                     |                            |     1 |   143 |     3   (0)| 00:00:01 |
|  91 |            TABLE ACCESS FULL                       | AT_VIRTUAL_LOCATION_LEVEL  |     1 |   143 |     3   (0)| 00:00:01 |
|  92 |           VIEW                                     |                            |    44 |   434K|    11  (10)| 00:00:01 |
|* 93 |            HASH JOIN OUTER                         |                            |    44 | 14168 |    11  (10)| 00:00:01 |
|  94 |             NESTED LOOPS OUTER                     |                            |     8 |  2216 |     5   (0)| 00:00:01 |
|  95 |              NESTED LOOPS OUTER                    |                            |     8 |  1992 |     5   (0)| 00:00:01 |
|  96 |               NESTED LOOPS OUTER                   |                            |     8 |  1768 |     5   (0)| 00:00:01 |
|  97 |                NESTED LOOPS OUTER                  |                            |     8 |  1544 |     5   (0)| 00:00:01 |
|  98 |                 NESTED LOOPS OUTER                 |                            |     8 |  1320 |     5   (0)| 00:00:01 |
|  99 |                  TABLE ACCESS FULL                 | AT_LOCATION_LEVEL          |     8 |   504 |     3   (0)| 00:00:01 |
| 100 |                  TABLE ACCESS BY INDEX ROWID       | AT_CWMS_TS_ID              |     1 |   102 |     1   (0)| 00:00:01 |
|*101 |                   INDEX UNIQUE SCAN                | AT_CWMS_TS_ID_PK           |     1 |       |     0   (0)| 00:00:01 |
|*102 |                 INDEX UNIQUE SCAN                  | CWMS_UNIT_CONVERSION_PK    |     1 |    28 |     0   (0)| 00:00:01 |
|*103 |                INDEX UNIQUE SCAN                   | CWMS_UNIT_CONVERSION_PK    |     1 |    28 |     0   (0)| 00:00:01 |
|*104 |               INDEX UNIQUE SCAN                    | CWMS_UNIT_CONVERSION_PK    |     1 |    28 |     0   (0)| 00:00:01 |
|*105 |              INDEX UNIQUE SCAN                     | CWMS_UNIT_CONVERSION_PK    |     1 |    28 |     0   (0)| 00:00:01 |
| 106 |             VIEW                                   |                            |    42 |  1890 |     6  (17)| 00:00:01 |
| 107 |              NESTED LOOPS OUTER                    |                            |    42 |  5376 |     6  (17)| 00:00:01 |
| 108 |               NESTED LOOPS OUTER                   |                            |    42 |  4956 |     6  (17)| 00:00:01 |
| 109 |                NESTED LOOPS OUTER                  |                            |    42 |  4536 |     6  (17)| 00:00:01 |
| 110 |                 NESTED LOOPS OUTER                 |                            |    42 |  3360 |     6  (17)| 00:00:01 |
| 111 |                  MERGE JOIN                        |                            |    42 |  2184 |     6  (17)| 00:00:01 |
| 112 |                   TABLE ACCESS BY INDEX ROWID      | AT_LOCATION_LEVEL          |     8 |   168 |     2   (0)| 00:00:01 |
| 113 |                    INDEX FULL SCAN                 | AT_LOCATION_LEVEL_PK       |     8 |       |     1   (0)| 00:00:01 |
|*114 |                   SORT JOIN                        |                            |    42 |  1302 |     4  (25)| 00:00:01 |
| 115 |                    TABLE ACCESS FULL               | AT_SEASONAL_LOCATION_LEVEL |    42 |  1302 |     3   (0)| 00:00:01 |
|*116 |                  INDEX UNIQUE SCAN                 | CWMS_UNIT_CONVERSION_PK    |     1 |    28 |     0   (0)| 00:00:01 |
|*117 |                 INDEX UNIQUE SCAN                  | CWMS_UNIT_CONVERSION_PK    |     1 |    28 |     0   (0)| 00:00:01 |
|*118 |                INDEX UNIQUE SCAN                   | CWMS_UNIT_CONVERSION_PK    |     1 |    10 |     0   (0)| 00:00:01 |
|*119 |               INDEX UNIQUE SCAN                    | CWMS_UNIT_CONVERSION_PK    |     1 |    10 |     0   (0)| 00:00:01 |
---------------------------------------------------------------------------------------------------------------------------------

@zack-rma zack-rma marked this pull request as ready for review February 13, 2026 21:50
@zack-rma zack-rma requested a review from adamkorynta February 13, 2026 23:35
@adamkorynta adamkorynta requested a review from a team February 23, 2026 19:19
@zack-rma zack-rma force-pushed the feature/loc_lvl_view_optimization branch from 2cd617b to a54421e Compare March 9, 2026 23:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants