使用 LECCO SQL Expert Pro for Sql Server(2.5.0) 优化一下语句时,提示不支持该语句。SELECT dbo.RIS_Studies.ID, ISNULL(dbo.RIS_Studies.ExamStatus, '待阅片')
AS ExamStatus, ISNULL(dbo.RIS_Studies.PatientID, dbo.StudyTable.PatientID_FKey)
AS PatientID, ISNULL(dbo.RIS_Studies.cnName, dbo.StudyTable.Name_Last)
AS cnname, ISNULL(dbo.RIS_Studies.Age, dbo.StudyTable.Age) AS age,
dbo.RIS_Studies.AgeType, ISNULL(dbo.RIS_Studies.Sex, dbo.StudyTable.Sex)
AS sex, ISNULL(dbo.RIS_Studies.DateOfBirth, dbo.StudyTable.DateOfBirth)
AS DateOfBirth, dbo.RIS_Studies.ExamType, ISNULL(dbo.RIS_Studies.Modality,
dbo.StudyTable.Modality) AS Modality, dbo.RIS_Studies.Nationals,
dbo.RIS_Studies.Weight, dbo.RIS_Studies.Zip, dbo.RIS_Studies.Phone,
dbo.RIS_Studies.Address, dbo.RIS_Studies.Email,
ISNULL(dbo.RIS_Studies.AccessionNumber, dbo.StudyTable.AccessionNumber)
AS AccessionNumber, dbo.RIS_Studies.MenzenNO, dbo.RIS_Studies.Inpatients,
dbo.RIS_Studies.YibaoNO, dbo.RIS_Studies.Area, dbo.RIS_Studies.Bed,
dbo.RIS_Studies.ShouFeiType, dbo.RIS_Studies.ShenQingKeshi,
dbo.RIS_Studies.ReferringPhysicianCHS, dbo.RIS_Studies.PerformingPhysicianCHS,
dbo.RIS_Studies.ExamDescription, ISNULL(dbo.RIS_Studies.StudyUID,
dbo.StudyTable.StudyUID) AS studyuid, dbo.RIS_Studies.ProcedureID,
dbo.RIS_Studies.ProcedureStepID, dbo.RIS_Studies.HospitalName,
dbo.RIS_Studies.ExamRoom, dbo.RIS_Studies.ScheduledAET,
dbo.RIS_Studies.Priority, dbo.RIS_Studies.ExamsSchedDate,
dbo.RIS_Studies.Operator, dbo.RIS_Studies.Operator_user,
dbo.RIS_Studies.ExamPart, dbo.RIS_Studies.ExamFangFa,
dbo.RIS_Studies.LcZenduan, dbo.RIS_Studies.Price, dbo.RIS_Studies.USType,
dbo.RIS_Studies.MenstruaAge, dbo.RIS_Studies.Memo, dbo.StudyTable.StudyDate,
dbo.StudyTable.StudyTime, dbo.StudyTable.StudyID,
dbo.StudyTable.StudyDescription, dbo.StudyTable.DiscVolume,
dbo.StudyTable.PrintStatus, dbo.StudyTable.isLock, dbo.Result.ID AS Result_ID,
dbo.Result.RisID, dbo.Result.YX, dbo.Result.ReportDate, dbo.Result.ReportTime,
dbo.Result.BaoGaoYiShen, dbo.Result.ShenHeYiShen, dbo.Result.ExamSuoJian,
dbo.Result.ExamJieLun, dbo.Result.A, dbo.Result.B, dbo.Result.C, dbo.Result.D,
dbo.Result.isDelete, dbo.RIS_Studies.PCount, dbo.RIS_Studies.ExposedCount,
dbo.RIS_Studies.FilmScore, dbo.RIS_Studies.FilmCount, dbo.Result.IllnessType,
dbo.Result.examrouyan, dbo.Result.examguangjing, dbo.Result.examjiance,
dbo.RIS_Studies.BL_ExamType, dbo.Report_BL_ExamType.ID AS report_type,
dbo.RIS_Studies.BRLY, dbo.RIS_Studies.ExamDateAndTime
FROM dbo.Result INNER JOIN
dbo.RIS_Studies ON dbo.Result.RisID = dbo.RIS_Studies.ID LEFT OUTER JOIN
dbo.Report_BL_ExamType ON
dbo.RIS_Studies.BL_ExamType = dbo.Report_BL_ExamType.Name FULL OUTER JOIN
dbo.StudyTable ON
dbo.RIS_Studies.StudyUID COLLATE SQL_Latin1_General_CP1_CI_AS = dbo.StudyTable.StudyUID
AS ExamStatus, ISNULL(dbo.RIS_Studies.PatientID, dbo.StudyTable.PatientID_FKey)
AS PatientID, ISNULL(dbo.RIS_Studies.cnName, dbo.StudyTable.Name_Last)
AS cnname, ISNULL(dbo.RIS_Studies.Age, dbo.StudyTable.Age) AS age,
dbo.RIS_Studies.AgeType, ISNULL(dbo.RIS_Studies.Sex, dbo.StudyTable.Sex)
AS sex, ISNULL(dbo.RIS_Studies.DateOfBirth, dbo.StudyTable.DateOfBirth)
AS DateOfBirth, dbo.RIS_Studies.ExamType, ISNULL(dbo.RIS_Studies.Modality,
dbo.StudyTable.Modality) AS Modality, dbo.RIS_Studies.Nationals,
dbo.RIS_Studies.Weight, dbo.RIS_Studies.Zip, dbo.RIS_Studies.Phone,
dbo.RIS_Studies.Address, dbo.RIS_Studies.Email,
ISNULL(dbo.RIS_Studies.AccessionNumber, dbo.StudyTable.AccessionNumber)
AS AccessionNumber, dbo.RIS_Studies.MenzenNO, dbo.RIS_Studies.Inpatients,
dbo.RIS_Studies.YibaoNO, dbo.RIS_Studies.Area, dbo.RIS_Studies.Bed,
dbo.RIS_Studies.ShouFeiType, dbo.RIS_Studies.ShenQingKeshi,
dbo.RIS_Studies.ReferringPhysicianCHS, dbo.RIS_Studies.PerformingPhysicianCHS,
dbo.RIS_Studies.ExamDescription, ISNULL(dbo.RIS_Studies.StudyUID,
dbo.StudyTable.StudyUID) AS studyuid, dbo.RIS_Studies.ProcedureID,
dbo.RIS_Studies.ProcedureStepID, dbo.RIS_Studies.HospitalName,
dbo.RIS_Studies.ExamRoom, dbo.RIS_Studies.ScheduledAET,
dbo.RIS_Studies.Priority, dbo.RIS_Studies.ExamsSchedDate,
dbo.RIS_Studies.Operator, dbo.RIS_Studies.Operator_user,
dbo.RIS_Studies.ExamPart, dbo.RIS_Studies.ExamFangFa,
dbo.RIS_Studies.LcZenduan, dbo.RIS_Studies.Price, dbo.RIS_Studies.USType,
dbo.RIS_Studies.MenstruaAge, dbo.RIS_Studies.Memo, dbo.StudyTable.StudyDate,
dbo.StudyTable.StudyTime, dbo.StudyTable.StudyID,
dbo.StudyTable.StudyDescription, dbo.StudyTable.DiscVolume,
dbo.StudyTable.PrintStatus, dbo.StudyTable.isLock, dbo.Result.ID AS Result_ID,
dbo.Result.RisID, dbo.Result.YX, dbo.Result.ReportDate, dbo.Result.ReportTime,
dbo.Result.BaoGaoYiShen, dbo.Result.ShenHeYiShen, dbo.Result.ExamSuoJian,
dbo.Result.ExamJieLun, dbo.Result.A, dbo.Result.B, dbo.Result.C, dbo.Result.D,
dbo.Result.isDelete, dbo.RIS_Studies.PCount, dbo.RIS_Studies.ExposedCount,
dbo.RIS_Studies.FilmScore, dbo.RIS_Studies.FilmCount, dbo.Result.IllnessType,
dbo.Result.examrouyan, dbo.Result.examguangjing, dbo.Result.examjiance,
dbo.RIS_Studies.BL_ExamType, dbo.Report_BL_ExamType.ID AS report_type,
dbo.RIS_Studies.BRLY, dbo.RIS_Studies.ExamDateAndTime
FROM dbo.Result INNER JOIN
dbo.RIS_Studies ON dbo.Result.RisID = dbo.RIS_Studies.ID LEFT OUTER JOIN
dbo.Report_BL_ExamType ON
dbo.RIS_Studies.BL_ExamType = dbo.Report_BL_ExamType.Name FULL OUTER JOIN
dbo.StudyTable ON
dbo.RIS_Studies.StudyUID COLLATE SQL_Latin1_General_CP1_CI_AS = dbo.StudyTable.StudyUID
1、审核下是否必要返回这么多字段,审核下是否必要没有where查询
2、如果有where,根据where条件分步查询也许能提高速度