SQL 优化:提升查询效率的技巧与示例
为了优化这个 SQL 查询,你可以考虑以下几点:\n\n1. 添加索引:确保在涉及到查询条件的列上添加索引,例如在 PEA.TENANT_ID、PEA.IS_DELETE、PEA.STATUS、PEAE.STATUS 以及 PEE.ID 上添加索引。\n\n2. 避免在子查询中使用 SELECT 1,可以直接使用 EXISTS 关键字来判断是否存在满足条件的记录。\n\n3. 考虑使用 JOIN 语句替代子查询,将 PFQA_EXAMINE_EVALUATION 表的条件连接到主查询中,这样可以避免使用 EXISTS 子查询。\n\n优化后的查询语句如下:\n\nSELECT PEA.name as activity_name, PEE.EMP_NAME, PEE.EMP_CODE, PEE.ORG_NAME, PEE.DEPT_NAME, PEE.POSITION_NAME, PEAE.STATUS \nFROM PFQA_EVALUATION_ACTIVITY pea \nINNER JOIN PFQA_EXAMINER_ACTIV_EVALUATION peae ON PEAE.ACTIVITY_ID = PEA.ID \nINNER JOIN PFQA_EVALUATION_EXAMINER pee ON pee.ID = PEAE.EXAMINER_ID \nINNER JOIN PFQA_EXAMINE_EVALUATION peen ON peen.EXAMINER_ID = PEE.ID AND peen.IS_ABSTENTION = 0\nWHERE PEA.TENANT_ID = ? \nAND PEA.IS_DELETE = '0' \nAND PEA.STATUS ='progress' \nAND PEAE.STATUS != 3
原文地址: https://www.cveoy.top/t/topic/p0CF 著作权归作者所有。请勿转载和采集!