Browse Source

优化巡检详情查询SQL优化

java110 6 years ago
parent
commit
5d6415239c

+ 6 - 14
java110-db/src/main/resources/mapper/community/InspectionTaskDetailServiceDaoImplMapper.xml

@@ -88,14 +88,10 @@
         statusCd,t.inspection_name,t.inspection_name inspectionName,t.state,t.community_id,t.community_id
         communityId,t.b_id,t.b_id bId,t.task_id,t.task_id taskId,t.task_detail_id,t.task_detail_id taskDetailId,
         td1.name stateName,t.patrol_type,t.description,t.patrol_type patrolType,td2.name patrolTypeName
-        from inspection_task_detail t,t_dict td1,t_dict td2
+        from inspection_task_detail t
+        left join t_dict td1 on  t.state = td1.status_cd and td1.table_name = 'inspection_task_detail' and td1.table_columns = 'state'
+        left join t_dict td2 on t.patrol_type = td2.status_cd and td2.table_name = 'inspection_task_detail' and td2.table_columns = 'patrol_type'
         where 1 =1
-        and t.state = td1.status_cd
-        and td1.table_name = 'inspection_task_detail'
-        and td1.table_columns = 'state'
-        and t.patrol_type = td2.status_cd
-        and td2.table_name = 'inspection_task_detail'
-        and td2.table_columns = 'patrol_type'
         <if test="inspectionId !=null and inspectionId != ''">
             and t.inspection_id= #{inspectionId}
         </if>
@@ -171,14 +167,10 @@
     <!-- 查询巡检任务明细数量 add by wuxw 2018-07-03 -->
     <select id="queryInspectionTaskDetailsCount" parameterType="Map" resultType="Map">
         select count(1) count
-        from inspection_task_detail t,t_dict td1,t_dict td2
+        from inspection_task_detail t
+        left join t_dict td1 on  t.state = td1.status_cd and td1.table_name = 'inspection_task_detail' and td1.table_columns = 'state'
+        left join t_dict td2 on t.patrol_type = td2.status_cd and td2.table_name = 'inspection_task_detail' and td2.table_columns = 'patrol_type'
         where 1 =1
-        and t.state = td1.status_cd
-        and td1.table_name = 'inspection_task_detail'
-        and td1.table_columns = 'state'
-        and t.patrol_type = td2.status_cd
-        and td2.table_name = 'inspection_task_detail'
-        and td2.table_columns = 'patrol_type'
         <if test="inspectionId !=null and inspectionId != ''">
             and t.inspection_id= #{inspectionId}
         </if>