优化后的 SQL:

SELECT
    re.*
FROM
    labor_work_record re
    INNER JOIN labor_work_attendance att ON re.WORKER_ORDER_ID = att.WORK_ORDER_ID
WHERE
    re.WORKER_ORDER_ID = '9a3ebfcea55d4fa25de986ae66413b11'
    AND re.SETTLE_STATUS = 0
    AND att.WHETHER_ATTENDANCE = 1

优化理由:

  1. 使用 INNER JOIN 替换原来的 WHERE 子句来连接两个表,可以提高查询效率。

  2. 将查询条件中的 re.WORKER_ORDER_ID = att.WORK_ORDER_ID 移到 INNER JOIN 中,可以进一步提高查询效率。

  3. re 表放在 FROM 子句的前面,可以减少查询时扫描的记录数,进一步提高查询效率。

SQL 优化:使用 INNER JOIN 提高效率

原文地址: https://www.cveoy.top/t/topic/oEL0 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录