Re: explain plan shows fts on same table multiple times with different costs
From: <wodenic_at_googlemail.com>
Date: Wed, 22 Apr 2009 16:37:44 -0700 (PDT)
Message-ID: <86f8123d-1b8b-45a8-a8e7-a09628a77c8c_at_z9g2000yqi.googlegroups.com>
hi,
AND BKMAP_ORG_TO_GEO_XREF.AUTHORING_ORG_ID = BKMAP_CONTRACT_HEADER.AUTHORING_ORG_ID
AND BKMAP_CONTRACT_LINE.CONTRACT_HEADER_ID = BKMAP_CONTRACT_REFERENCES.CONTRACT_HEADER_ID AND BKMAP_CONTRACT_LINE.CONTRACT_LINE_ID = BKMAP_CONTRACT_REFERENCES.CONTRACT_LINE_ID
'HOLD',
'QA_HOLD', 'TERMINATED')
AND BKMAP_CONTRACT_HEADER.SCS_CODE = 'SERVICE')); thanks
Craig Received on Wed Apr 22 2009 - 18:37:44 CDT
Date: Wed, 22 Apr 2009 16:37:44 -0700 (PDT)
Message-ID: <86f8123d-1b8b-45a8-a8e7-a09628a77c8c_at_z9g2000yqi.googlegroups.com>
hi,
yes a single scan would be preferable, but given the statement, it doesn't seem possible
Its more of a curiosity than anything else
SELECT
BKMAP_CONTRACT_LINE.LOAD_DATE, BKMAP_CONTRACT_LINE.LINE_NUMBER, BKMAP_CONTRACT_LINE.PARENT_LINE_ID, BKMAP_CONTRACT_LINE.CONTRACT_HEADER_ID, BKMAP_CONTRACT_LINE.STS_CODE, BKMAP_CONTRACT_LINE.LAST_UPDATE_DATE, BKMAP_CONTRACT_LINE.START_DATE, BKMAP_CONTRACT_LINE.END_DATE, BKMAP_CONTRACT_LINE.COVERAGE_CODE, BKMAP_CONTRACT_LINE.QUANTITY, BKMAP_CONTRACT_HEADER.CONTRACT_NUMBER, BKMAP_CONTRACT_HEADER.SCS_CODE, BKMAP_CONTRACT_LINE1.LINE_NUMBER, BKMAP_ITEM_INSTANCES.SERIAL_NUMBER, BKMAP_ITEM_INSTANCES.INSTALL_DATE, BKMAP_ITEM_INSTANCES.MARKETING_PART_NUMBER, BKMAP_MATERIAL_ITEM.PRODUCT_CODE, DECODE(BKMAP_CONTRACT_HEADER.SCS_CODE, 'WARRANTY', BKMAP_CONTRACT_REFERENCES.INSTALL_LOCATION_ID, 'SERVICE', BKMAP_CUSTOMER_SITE.PARTY_SITE_ID) AS LKP_PARTY_SITE, BKMAP_CONTRACT_REFERENCES.INSTANCE_ID, BKMAP_CONTRACT_LINE.CONTRACT_LINE_ID, BKMAP_CONTRACT_LINE.ATTRIBUTE1, BKMAP_CONTRACT_LINE.RELATED_OBJECT_TYPE, BKMAP_CUSTOMER_SITE.PARTY_SITE_ID, BKMAP_CONTRACT_REFERENCES.INSTALL_LOCATION_ID FROM BKMAP_CONTRACT_LINE, BKMAP_ORG_TO_GEO_XREF, BKMAP_CONTRACT_HEADER, BKMAP_CONTRACT_LINE BKMAP_CONTRACT_LINE1, BKMAP_CONTRACT_REFERENCES, BKMAP_ITEM_INSTANCES, BKMAP_MATERIAL_ITEM, BKMAP_CUSTOMER_SITE, (SELECT LINE.SHIP_TO_SITE_USE_ID, LINE.CONTRACT_LINE_ID FROM BKMAP_CONTRACT_LINE LINE WHERE LINE.PARENT_LINE_ID is null) SHIP WHERE BKMAP_CONTRACT_HEADER.CONTRACT_HEADER_ID = BKMAP_CONTRACT_LINE.CONTRACT_HEADER_ID AND BKMAP_CONTRACT_LINE.PARENT_LINE_ID = BKMAP_CONTRACT_LINE1.CONTRACT_LINE_ID AND BKMAP_CONTRACT_LINE.PARENT_LINE_ID = BKMAP_CONTRACT_LINE1.CONTRACT_LINE_ID
AND BKMAP_ORG_TO_GEO_XREF.AUTHORING_ORG_ID = BKMAP_CONTRACT_HEADER.AUTHORING_ORG_ID
AND BKMAP_CONTRACT_LINE.CONTRACT_HEADER_ID = BKMAP_CONTRACT_REFERENCES.CONTRACT_HEADER_ID AND BKMAP_CONTRACT_LINE.CONTRACT_LINE_ID = BKMAP_CONTRACT_REFERENCES.CONTRACT_LINE_ID
AND BKMAP_CONTRACT_REFERENCES.INSTANCE_ID = BKMAP_ITEM_INSTANCES.INSTANCE_ID(+) AND BKMAP_ITEM_INSTANCES.INVENTORY_ITEM_ID =BKMAP_MATERIAL_ITEM.INVENTORY_ITEM_ID(+) AND BKMAP_CONTRACT_LINE.PARENT_LINE_ID = SHIP.CONTRACT_LINE_ID(+) AND SHIP.SHIP_TO_SITE_USE_ID = BKMAP_CUSTOMER_SITE.SITE_USE_ID(+) AND BKMAP_CONTRACT_LINE.PARENT_LINE_ID IS NOT NULL AND BKMAP_ORG_TO_GEO_XREF.SERVICE_GEO_ID = 'US' AND (BKMAP_CONTRACT_HEADER.SCS_CODE = 'WARRANTY' OR (BKMAP_CONTRACT_HEADER.STS_CODE IN ('ACTIVE', 'EXPIRED',
'HOLD',
'QA_HOLD', 'TERMINATED')
AND BKMAP_CONTRACT_HEADER.SCS_CODE = 'SERVICE')); thanks
Craig Received on Wed Apr 22 2009 - 18:37:44 CDT