I am running a query where all the data except 1 table is on a linked database. First, this query runs much slower on the server I am executing from. Question. Is all the data from each table loaded onto the server I am executing from before any criteria is applied or does the part of the query execute on the remote server and only return the resultset? Is this type of query going to cause performance problems. Oracle 9I now going to 10G soon.
Here is the query.
SELECT ITEM.ITCPTMOD0, ITEM.ITCHARGECD, FACILITY.FCLCODE,
eap.proc_code as epic_code, eap.modifier as epic_mod,
VISITPROC.VPRWRKST, ITEM.ITCPTCD, CPTTABLE.CPTDESC,
CHRGCODE.CPTDESC, INVOICE.INLBDT, INVOICE.INBQNTF,
STAY.STBILNO, HLSYS_WORKSTATION.WSTEXT1, TEST.TSTTYPE
FROM ((AR.CPTTABLE@or1.ntcampus.mycompany.org CHRGCODE
INNER JOIN
(((((((AR.VISITPROC@or1.ntcampus.mycompany.org VISITPROC
INNER JOIN AR.FACILITY@or1.ntcampus.mycompany.org FACILITY
ON VISITPROC.VPRORDFCLTY = FACILITY.FCLCODE)
INNER JOIN
AR.VISIT@or1.ntcampus.mycompany.org VISIT
ON VISITPROC.VPRVTINTN = VISIT.VTINTN)
INNER JOIN
AR.VPRITLINK@or1.ntcampus.mycompany.org VPRITLINK
ON (VISITPROC.VPRINTN = VPRITLINK.LNKVPRINTN)
AND (VISIT.VTINTN = VPRITLINK.LNKVTINTN))
INNER JOIN
AR.TEST@or1.ntcampus.mycompany.org TEST
ON (VISITPROC.VPRTSTCODE = TEST.TSTCODE)
AND (VISITPROC.VPRSYSCODE = TEST.TSTSYSCODE))
INNER JOIN
AR.STAY@or1.ntcampus.mycompany.org STAY
ON VISIT.VTSTINTN = STAY.STINTN)
INNER JOIN
AR.ITEM@or1.ntcampus.mycompany.org ITEM
ON VPRITLINK.LNKITINTN = ITEM.ITINTN)
LEFT OUTER JOIN
LAB.HLSYS_WORKSTATION@or1.ntcampus.mycompany.org HLSYS_WORKSTATION
ON VPRITLINK.LNKWRKST = HLSYS_WORKSTATION.WSCODE)
ON CHRGCODE.CPTCODE = ITEM.ITCHARGECD)
INNER JOIN
AR.CPTTABLE@or1.ntcampus.mycompany.org CPTTABLE
ON ITEM.ITCPTCD = CPTTABLE.CPTCODE)
INNER JOIN
AR.INVOICE@or1.ntcampus.mycompany.org INVOICE
ON ( (ITEM.ITVTINTN = INVOICE.INVTINTN)
AND (ITEM.ITINEXT = INVOICE.INEXT)
)
AND (VISIT.VTINTN = INVOICE.INVTINTN)
LEFT OUTER JOIN
clarity.clarity_eap eap
ON ITEM.ITCHARGECD = eap.proc_code
WHERE TEST.TSTTYPE <> 1
AND ( INVOICE.INLBDT >=
TO_DATE ('12-04-2007 00:00:00', 'DD-MM-YYYY HH24:MI:SS')
AND INVOICE.INLBDT <
TO_DATE ('20-04-2007 00:00:00', 'DD-MM-YYYY HH24:MI:SS')
)
ORDER BY HLSYS_WORKSTATION.WSTEXT1,
FACILITY.FCLCODE,
VISITPROC.VPRWRKST,
ITEM.ITCPTCD
Here is the query.
SELECT ITEM.ITCPTMOD0, ITEM.ITCHARGECD, FACILITY.FCLCODE,
eap.proc_code as epic_code, eap.modifier as epic_mod,
VISITPROC.VPRWRKST, ITEM.ITCPTCD, CPTTABLE.CPTDESC,
CHRGCODE.CPTDESC, INVOICE.INLBDT, INVOICE.INBQNTF,
STAY.STBILNO, HLSYS_WORKSTATION.WSTEXT1, TEST.TSTTYPE
FROM ((AR.CPTTABLE@or1.ntcampus.mycompany.org CHRGCODE
INNER JOIN
(((((((AR.VISITPROC@or1.ntcampus.mycompany.org VISITPROC
INNER JOIN AR.FACILITY@or1.ntcampus.mycompany.org FACILITY
ON VISITPROC.VPRORDFCLTY = FACILITY.FCLCODE)
INNER JOIN
AR.VISIT@or1.ntcampus.mycompany.org VISIT
ON VISITPROC.VPRVTINTN = VISIT.VTINTN)
INNER JOIN
AR.VPRITLINK@or1.ntcampus.mycompany.org VPRITLINK
ON (VISITPROC.VPRINTN = VPRITLINK.LNKVPRINTN)
AND (VISIT.VTINTN = VPRITLINK.LNKVTINTN))
INNER JOIN
AR.TEST@or1.ntcampus.mycompany.org TEST
ON (VISITPROC.VPRTSTCODE = TEST.TSTCODE)
AND (VISITPROC.VPRSYSCODE = TEST.TSTSYSCODE))
INNER JOIN
AR.STAY@or1.ntcampus.mycompany.org STAY
ON VISIT.VTSTINTN = STAY.STINTN)
INNER JOIN
AR.ITEM@or1.ntcampus.mycompany.org ITEM
ON VPRITLINK.LNKITINTN = ITEM.ITINTN)
LEFT OUTER JOIN
LAB.HLSYS_WORKSTATION@or1.ntcampus.mycompany.org HLSYS_WORKSTATION
ON VPRITLINK.LNKWRKST = HLSYS_WORKSTATION.WSCODE)
ON CHRGCODE.CPTCODE = ITEM.ITCHARGECD)
INNER JOIN
AR.CPTTABLE@or1.ntcampus.mycompany.org CPTTABLE
ON ITEM.ITCPTCD = CPTTABLE.CPTCODE)
INNER JOIN
AR.INVOICE@or1.ntcampus.mycompany.org INVOICE
ON ( (ITEM.ITVTINTN = INVOICE.INVTINTN)
AND (ITEM.ITINEXT = INVOICE.INEXT)
)
AND (VISIT.VTINTN = INVOICE.INVTINTN)
LEFT OUTER JOIN
clarity.clarity_eap eap
ON ITEM.ITCHARGECD = eap.proc_code
WHERE TEST.TSTTYPE <> 1
AND ( INVOICE.INLBDT >=
TO_DATE ('12-04-2007 00:00:00', 'DD-MM-YYYY HH24:MI:SS')
AND INVOICE.INLBDT <
TO_DATE ('20-04-2007 00:00:00', 'DD-MM-YYYY HH24:MI:SS')
)
ORDER BY HLSYS_WORKSTATION.WSTEXT1,
FACILITY.FCLCODE,
VISITPROC.VPRWRKST,
ITEM.ITCPTCD