-- ============================================ -- 分析健康师消耗项目数差异 -- 员工ID: 18566028067 (李芳) -- ============================================ -- 1. 接口统计逻辑(使用耗卡时间,时间范围:2025-11-01 到 2025-11-25 11:55:32) SELECT jksyj.jkszh as EmployeeId, CAST(SUM(jksyj.F_kdpxNumber) AS DECIMAL(18,2)) as ProjectCount_接口逻辑 FROM lq_xh_jksyj jksyj INNER JOIN lq_xh_hyhk hyhk ON jksyj.glkdbh = hyhk.F_Id WHERE jksyj.jkszh = '18566028067' AND jksyj.F_IsEffective = 1 AND hyhk.F_IsEffective = 1 AND hyhk.hksj >= '2025-11-01 00:00:00' AND hyhk.hksj <= '2025-11-25 11:55:32' GROUP BY jksyj.jkszh; -- 2. 整个11月的统计(使用业绩时间) SELECT jksyj.jkszh as EmployeeId, CAST(SUM(jksyj.F_kdpxNumber) AS DECIMAL(18,2)) as ProjectCount_整个11月 FROM lq_xh_jksyj jksyj WHERE (jksyj.jks = '18566028067' OR jksyj.jkszh = '18566028067') AND jksyj.F_IsEffective = 1 AND DATE_FORMAT(jksyj.yjsj, '%Y%m') = '202511' GROUP BY jksyj.jkszh; -- 3. 查看11月25日之后的记录(可能导致差异的原因) SELECT jksyj.jkszh as EmployeeId, jksyj.F_kdpxNumber as 项目数, jksyj.yjsj as 业绩时间, hyhk.hksj as 耗卡时间, hyhk.F_IsEffective as 耗卡记录是否有效, jksyj.F_IsEffective as 业绩记录是否有效 FROM lq_xh_jksyj jksyj LEFT JOIN lq_xh_hyhk hyhk ON jksyj.glkdbh = hyhk.F_Id WHERE (jksyj.jks = '18566028067' OR jksyj.jkszh = '18566028067') AND jksyj.F_IsEffective = 1 AND ( (jksyj.yjsj >= '2025-11-25 11:55:32' AND jksyj.yjsj < '2025-12-01') OR (hyhk.hksj >= '2025-11-25 11:55:32' AND hyhk.hksj < '2025-12-01') ) ORDER BY jksyj.yjsj; -- 4. 查看耗卡记录无效但业绩记录有效的记录(可能导致差异的原因) SELECT jksyj.jkszh as EmployeeId, jksyj.F_kdpxNumber as 项目数, jksyj.yjsj as 业绩时间, hyhk.hksj as 耗卡时间, hyhk.F_IsEffective as 耗卡记录是否有效, jksyj.F_IsEffective as 业绩记录是否有效 FROM lq_xh_jksyj jksyj LEFT JOIN lq_xh_hyhk hyhk ON jksyj.glkdbh = hyhk.F_Id WHERE (jksyj.jks = '18566028067' OR jksyj.jkszh = '18566028067') AND jksyj.F_IsEffective = 1 AND (hyhk.F_IsEffective != 1 OR hyhk.F_IsEffective IS NULL) AND jksyj.yjsj >= '2025-11-01' AND jksyj.yjsj < '2025-12-01' ORDER BY jksyj.yjsj; -- 5. 查看耗卡时间和业绩时间不一致的记录(可能导致差异的原因) SELECT jksyj.jkszh as EmployeeId, jksyj.F_kdpxNumber as 项目数, jksyj.yjsj as 业绩时间, hyhk.hksj as 耗卡时间, DATEDIFF(jksyj.yjsj, hyhk.hksj) as 时间差_天, CASE WHEN hyhk.hksj >= '2025-11-01 00:00:00' AND hyhk.hksj <= '2025-11-25 11:55:32' THEN '在接口时间范围内' ELSE '不在接口时间范围内' END as 是否在接口时间范围 FROM lq_xh_jksyj jksyj INNER JOIN lq_xh_hyhk hyhk ON jksyj.glkdbh = hyhk.F_Id WHERE (jksyj.jks = '18566028067' OR jksyj.jkszh = '18566028067') AND jksyj.F_IsEffective = 1 AND hyhk.F_IsEffective = 1 AND ( (jksyj.yjsj >= '2025-11-01' AND jksyj.yjsj < '2025-12-01') OR (hyhk.hksj >= '2025-11-01' AND hyhk.hksj < '2025-12-01') ) AND ( jksyj.yjsj < '2025-11-01' OR jksyj.yjsj >= '2025-12-01' OR hyhk.hksj < '2025-11-01' OR hyhk.hksj >= '2025-12-01' OR DATEDIFF(jksyj.yjsj, hyhk.hksj) != 0 ) ORDER BY jksyj.yjsj;