查询统计需求分析.docx
《查询统计需求分析.docx》由会员分享,可在线阅读,更多相关《查询统计需求分析.docx(25页珍藏版)》请在冰点文库上搜索。
查询统计需求分析
查询统计分为工作量统计,病人统计,科室统计,设备统计,报告结果统计
要求输出的统计内容可自行选取。
工作量统计
医生工作量统计
送检医生
查询条件:
检查时间,检查方法<检查类别),送检科室,病人类别
可能的统计内容:
病人人数,收费金额,检查工程的个数,检查类别的个数
统计结果:
计数或者求和
Select*frompatient,patientvisit,studyflow,schedule,exam,balancewherePatient.TID=PatientVisit.PatientTIDandPatientVisit.TID=StudyFlow.PatientTIDandStudyFlow.scheduleTID=Schedule.TIDandStudyFlow.ExamTID=Exam.TIDandStudyFlow.BalanceTID=Balance.TIDandstudyflow.examtid=exam.tidandstudyflow.statusin(’7’,’15’,’39’,’47’>
收费金额在Balance.TotalMoney或者Balance.schedulemoney
送检科室统计病人数量或收费金额
送检科室字段来自schedule.ReferringDepartment,或者DEPT_DICT字典
按送检医生统计病人数量和收费金额
送检医生取自于schedule.ReferringPhysician或者Person字典表
按病人类别统计病人数量
病人类别取自于patientvisit.patientclass或者patientclass字典表
按检查方法统计病人数量
检查方法取自于studyflow.procedurexname或者procedurexname字典表
按检查类别统计病人数量
检查类别取自于exam.EXAM_CLASS或者EXAM_CLASSX字典表
按检查部位统计病人数量
检查部位取自于studyflow.EXAM_SUB_CLASS或者EXAM_SUB_CLASSX字典表
按检查工程统计病人数量
检查工程字段取自于studyflow.ExamItem
每个统计工程还需要输入查询条件,查询条件一般有以下几种:
检查时间:
exam.studydate或者studyflow.studydatetime
医生姓名:
schedule.ReferringPhysician
送检科室:
schedule.ReferringDepartment
检查科室:
Exam.RequestingDepartment或者studyflow.RequestingDepartment
病人类别:
patientclass.name
检查类别:
EXAM_CLASSX.EXAM_CLASS
检查部位:
Exam.EXAM_SUB_CLASS
收费类别:
PatientVisit.CHARGE_TYPE
送检科室统计病人数量
第一步:
取出医生的姓名,方法有2种
1、select*frompersonwhere
2、selectdistinct(ReferringPhysician>fromschedulewherestudydatetime>’’andstudydatetime<’’
第二步:
统计每个送检医生的送检病人次数
SelectCount(*>FROMSTUDYFLOWINNERJOINPATIENTVISITONSTUDYFLOW.PatientTID=PatientVisit.TIDINNERJOINPATIENTONPatientVisit.PatientTID=Patient.TIDLEFTJOINExamONSTUDYFLOW.ExamTID=Exam.TIDLEFTJOINScheduleONSTUDYFLOW.ScheduleTID=Schedule.TIDwhereSchedule.ReferringPhysician=’XXX’andExam.Studydate>’XXX’andExam.Studydate<’XXX’
报告医生
查询条件:
检查时间,检查方法<检查类别),报告状态,报告医生。
可能的统计内容:
报告次数,诊断结果,报告阳性率,病人阳性率
统计结果:
计数,比例或者求和
SELECTCOUNT(*>FROMSTUDYFLOWINNERJOINPATIENTVISITONSTUDYFLOW.PatientTID=PatientVisit.TIDINNERJOINPATIENTONPatientVisit.PatientTID=Patient.TIDINNERJOINGENERAL_SERIESONSTUDYFLOW.TID=GENERAL_SERIES.ExamTIDINNERJOINReportSeriesONGENERAL_SERIES.TID=ReportSeries.SeriesTIDLEFTJOINExamONSTUDYFLOW.ExamTID=Exam.TIDLEFTJOINREPORTONREPORT.TID=ReportSeries.FirstReportTIDwhere(ReportSeries.Status='REPORTED'orReportSeries.Status='UNVERIFIED'orReportSeries.Status='VERIFIED:
NOTPASSED'orReportSeries.Status='VERIFIED:
PASSED'orReportSeries.Status='REVERIFIED:
NOTPASSED'orReportSeries.Status='REVERIFIED:
PASSED'>
按医生统计诊断报告数量
报告医生姓名取自Report.REPORT_AUTHOR,或者Person字典表
按诊断结果统计病人数量
诊断结果取自exam.Disease
报告阳性率
报告结果取自report.reportresult
按检查结果统计病人阳性率
检查的阳性率取自exam.examresult
按病人类别统计诊断报告数量
病人类别取自patientvisit.patientclass或者patientclass字典表
按各检查方法统计诊断报告数量
检查方法取自studyflow.procedurexname或者procedurexname字典表
按检查类别统计诊断报告数量
检查类别取自Exam.EXAM_CLASS或者EXAM_CLASSX字典表
按检查部位统计诊断报告数量
检查部位取自Exam.EXAM_SUB_CLASS或者EXAM_SUB_CLASSX字典表
每个统计工程还需要输入查询条件,查询条件一般有以下几种:
报告状态:
ReportSeries.Status
检查时间:
exam.studydate或者studyflow.studydatetime
报告医生姓名:
Report.REPORT_AUTHOR
送检科室:
schedule.ReferringDepartment
检查科室:
Exam.RequestingDepartment或者studyflow.RequestingDepartment
病人类别:
patientclass.name
检查类别:
EXAM_CLASSX.EXAM_CLASS
检查部位:
Exam.EXAM_SUB_CLASS
收费类别:
PatientVisit.CHARGE_TYPE
按医生统计报告数量
第一步:
取出医生的姓名,方法有2种
1、select*frompersonwhere
2、selectdistinct(report.REPORT_AUTHOR>fromreport
第二步:
统计每个报告医生的报告量
SELECTCOUNT(*>FROMSTUDYFLOWINNERJOINPATIENTVISITONSTUDYFLOW.PatientTID=PatientVisit.TIDINNERJOINPATIENTONPatientVisit.PatientTID=Patient.TIDINNERJOINGENERAL_SERIESONSTUDYFLOW.TID=GENERAL_SERIES.ExamTIDINNERJOINReportSeriesONGENERAL_SERIES.TID=ReportSeries.SeriesTIDLEFTJOINExamONSTUDYFLOW.ExamTID=Exam.TIDLEFTJOINREPORTONREPORT.TID=ReportSeries.FirstReportTIDwhere(ReportSeries.Status='REPORTED'orReportSeries.Status='UNVERIFIED'orReportSeries.Status='VERIFIED:
NOTPASSED'orReportSeries.Status='VERIFIED:
PASSED'orReportSeries.Status='REVERIFIED:
NOTPASSED'orReportSeries.Status='REVERIFIED:
PASSED'>wherereport.REPORT_AUTHOR=’XXX’andExam.Studydate>’XXX’andExam.Studydate<’XXX’
审核医生
查询条件:
检查时间,检查方法<检查类别),报告状态,审核医生。
可能的统计内容:
一审数量,二审数量,报告阳性率,病人阳性率
统计结果:
计数,比例或者求和
SELECTCOUNT(*>FROMSTUDYFLOWINNERJOINPATIENTVISITONSTUDYFLOW.PatientTID=PatientVisit.TIDINNERJOINPATIENTONPatientVisit.PatientTID=Patient.TIDINNERJOINGENERAL_SERIESONSTUDYFLOW.TID=GENERAL_SERIES.ExamTIDINNERJOINReportSeriesONGENERAL_SERIES.TID=ReportSeries.SeriesTIDLEFTJOINExamONSTUDYFLOW.ExamTID=Exam.TIDLEFTJOINREPORTONREPORT.TID=ReportSeries.FirstReportTIDLEFTJOINReportVerifyONReport.TID=ReportVerify.ReportTIDwhere(ReportSeries.Status='REPORTED'orReportSeries.Status='UNVERIFIED'orReportSeries.Status='VERIFIED:
NOTPASSED'orReportSeries.Status='VERIFIED:
PASSED'orReportSeries.Status='REVERIFIED:
NOTPASSED'orReportSeries.Status='REVERIFIED:
PASSED'>
按医生统计审核报告数量
审核医生姓名取自ReportVerify.REPORT_VERIFYINGOBSERVERNAME,或者Person字典表
一审的报告数量
审核状态字段是ReportSeries.Status,状态有'VERIFIED:
PASSED'or'VERIFIED:
NOTPASSED'
二审的报告数量
审核状态字段是ReportSeries.Status,状态有'REVERIFIED:
PASSED'or'REVERIFIED:
NOTPASSED'
报告阳性率
报告结果取自report.reportresult
按检查结果统计病人阳性率
检查的阳性率取自exam.examresult
按病人类别统计诊断报告数量
病人类别取自patientvisit.patientclass或者patientclass字典表
按各检查方法统计诊断报告数量
检查方法取自studyflow.procedurexname或者procedurexname字典表
按检查类别统计诊断报告数量
检查类别取自Exam.EXAM_CLASS或者EXAM_CLASSX字典表
按检查部位统计诊断报告数量
检查部位取自studyflow.EXAM_SUB_CLASS或者EXAM_SUB_CLASSX字典表
每个统计工程还需要输入查询条件,查询条件一般有以下几种:
报告状态:
ReportSeries.Status
检查时间:
exam.studydate或者studyflow.studydatetime
审核医生姓名:
ReportVerify.REPORT_VERIFYINGOBSERVERNAME
病人类别:
patientclass.name
检查类别:
EXAM_CLASSX.EXAM_CLASS
检查部位:
Exam.EXAM_SUB_CLASS
收费类别:
PatientVisit.CHARGE_TYPE
送检科室:
schedule.ReferringDepartment
按医生统计审核数量
第一步:
取出医生的姓名,方法有2种
1、select*frompersonwhere
2、selectdistinct(ReportVerify.REPORT_VERIFYINGOBSERVERNAME>fromReportVerify
第二步:
统计每个医生的报告审核量
SELECTCOUNT(*>FROMSTUDYFLOWINNERJOINPATIENTVISITONSTUDYFLOW.PatientTID=PatientVisit.TIDINNERJOINPATIENTONPatientVisit.PatientTID=Patient.TIDINNERJOINGENERAL_SERIESONSTUDYFLOW.TID=GENERAL_SERIES.ExamTIDINNERJOINReportSeriesONGENERAL_SERIES.TID=ReportSeries.SeriesTIDLEFTJOINExamONSTUDYFLOW.ExamTID=Exam.TIDLEFTJOINREPORTONREPORT.TID=ReportSeries.FirstReportTIDLEFTJOINReportVerifyONReport.TID=ReportVerify.ReportTIDwhere(ReportSeries.Status='REPORTED'orReportSeries.Status='UNVERIFIED'orReportSeries.Status='VERIFIED:
NOTPASSED'orReportSeries.Status='VERIFIED:
PASSED'orReportSeries.Status='REVERIFIED:
NOTPASSED'orReportSeries.Status='REVERIFIED:
PASSED'>whereReportVerify.REPORT_VERIFYINGOBSERVERNAME=’XXX’andExam.Studydate>’XXX’andExam.Studydate<’XXX’
技师工作量统计
查询条件:
检查时间,检查方法<检查类别),主机的modality,技师名称
统计内容:
摄片量<图像级医生统计图像级别的摄片量,序列级医生统计序列级别的摄片量),曝光次数,优片率,费用。
b5E2RGbCAP
可能的统计结果:
计数,比例或者求和
Select*frompatient,patientvisit,studyflow,schedule,exam,balancewherePatient.TID=PatientVisit.PatientTIDandPatientVisit.TID=StudyFlow.PatientTIDandStudyFlow.scheduleTID=Schedule.TIDandStudyFlow.ExamTID=Exam.TIDandStudyFlow.BalanceTID=Balance.TIDandstudyflow.examtid=exam.tidandExam.TID=Exam_CR.ExamTID
Select*frompatient,patientvisit,studyflow,schedule,exam,balancewherePatient.TID=PatientVisit.PatientTIDandPatientVisit.TID=StudyFlow.PatientTIDandStudyFlow.scheduleTID=Schedule.TIDandStudyFlow.ExamTID=Exam.TIDandStudyFlow.BalanceTID=Balance.TIDandstudyflow.examtid=exam.tidandStudyFlow.TID=GENERAL_SERIES.ExamTIDandGENERAL_SERIES.TID=GENERAL_IMAGE.SeriesTIDandGENERAL_IMAGE.TID=NormalImage.ImageTIDandexam.modalitysinstudynotlike‘%OT%’
按医生统计摄片量
医生姓名取自studyflow.RequestingPhysician,或者Person字典表,但序列级设备统计图像序列的个数两者都要将扫描图像去掉,扫描图像的modality是OT
曝光次数
目前只有CR和DR设备可以填写曝光次数,字段来自于Exam_DR或者Exam_CR的ExposalNum
按图像质量统计++
图片的质量在GENERAL_SERIES.Quality或者GENERAL_IMAGE.Quality
每个统计工程还需要输入查询条件,查询条件一般有以下几种:
检查时间:
exam.studydate或者studyflow.studydatetime
医生姓名:
Exam.PerformingPhysiciansName或者studyflow.RequestingPhysician
送检科室:
schedule.ReferringDepartment
检查科室:
Exam.RequestingDepartment或者studyflow.RequestingDepartment
摄片类型:
Exam.modalitysinstudy
病人类别:
patientclass.name
检查类别:
EXAM_CLASSX.EXAM_CLASS
检查部位:
Exam.EXAM_SUB_CLASS
收费类别:
PatientVisit.CHARGE_TYPE
按医生统计摄片量
第一步:
取出医生的姓名,方法有2种
1、select*frompersonwhere
2、selectdistinct(studyflow.RequestingPhysician>fromstudyflow
第二步:
统计序列级医生的摄片量
SelectCount(*>FROMSTUDYFLOWINNERJOINPATIENTVISITONSTUDYFLOW.PatientTID=PatientVisit.TIDINNERJOINPATIENTONPatientVisit.PatientTID=Patient.TIDLEFTJOINExamONSTUDYFLOW.ExamTID=Exam.TIDINNERJOINGENERAL_SERIESONSTUDYFLOW.TID=GENERAL_SERIES.ExamTIDwhereExam.PerformingPhysiciansName=’XXX’andExam.Studydate>’XXX’andExam.Studydate<’XXX’and(exam.modalitysinstudylike‘%CT%’orexam.modalitysinstudylike‘%MR%’>
登记人员工作量统计
查询条件:
检查时间,检查方法<检查类别),主机的modality,登记人员名称。
可能的统计内容:
检查人数统计,登记人数统计
统计结果:
计数
病人统计
查询条件:
检查时间,检查方法<检查类别),送检科室,病人类别,送检医生
可能的统计内容:
人数,费用,各类型病人人数统计,各检查数量统计,各检查部位数量统计,各费别数量统计,性别统计,年龄段统计,疾病名称统计p1EanqFDPw
统计结果:
计数,求和
Select*frompatient,patientvisit,studyflow,schedule,exam,balancewherePatient.TID=PatientVisit.PatientTIDandPatientVisit.TID=StudyFlow.PatientTIDandStudyFlow.scheduleTID=Schedule.TIDandStudyFlow.ExamTID=Exam.TIDandStudyFlow.BalanceTID=Balance.TID
按性别统计病人数量
病人性别字段取自Patient.Sexasps
按疾病名称统计病人数量
疾病字段取自于来自Exam.Diseaseed
按费别统计病人数量和收费金额
病人费别取自于PatientVisit.Charge_TYPE或者CHARGE_TYPE_DICT字典表pvc
按病人类别统计病人数量
病人类别取自于patientvisit.patientclass或者patientclass字典表ppc
按检查方法统计病人数量
检查方法取自于
e或者procedurexname字典表pdx
按检查类别统计病人数量
检查类别取自于exam.EXAM_CLASS或者EXAM_CLASSX字典表eel
按检查部位统计病人数量
检查部位取自于studyflow.EXAM_SUB_CLASS或者EXAM_SUB_CLASSX字典表
sfe