SELECT
Patient.fid,
Patient.fName_l1,
Patient.FAlternateNo,
Patient.FAlternateNo2,
Patient.FCoSchemeCode,
Company.FName_l1,
Patient.FHKID,
Patient.FPatientACNo,
OwnerPat.FName_L1 as acctName,
Patient.FStaffGrade,
Contract.FPlanDescription,
Patient.FStatus
FROM
T_UF_Patient Patient
LEFT JOIN T_BD_Company Company ON Patient.FCoCode = Company.FNumber
LEFT JOIN T_CM_ContractMain Contract ON Patient.FCoSchemeCode = Contract.FNumber
LEFT JOIN T_UF_Patient OwnerPat on Patient.FCOSchemeCode = OwnerPat.FCOSchemeCode and Patient.FPatientDependACNO = OwnerPat.FPatientACNo
WHERE
(Patient.FAlternateNo like '%')
and Contract.FID in (
SELECT distinct c1.fid FROM t_cm_contractmain c1,
(SELECT max(fversionnumber) fversionnumber,fnumber FROM t_cm_contractmain GROUP BY fnumber) c2
WHERE NVL(c1.fversionnumber,0) = NVL(c2.fversionnumber,0) and c1.fnumber = c2.fnumber
)
ORDER BY 'PATNAME';
恳请大神指导优化,,,数据库又500W条数据,,,如何优化~~~ 现在查询,平均 》= 40 s
Thanks
------解决思路----------------------
没啥不好,就是版本太低(oracle9i以下)用不了