所需的项目数以项目实体为单位,检查数以单次检查事件为单位。 North 有2个项目、4次检查事件、3次检查通过。South 有1个项目、 2次检查事件、1次检查通过。West 有1个项目,没有检查事件, 因此 checks 和 passed 均为0。完整三行输出共计4个项目、 6次检查事件和4次通过的检查事件。 P1 在原始连接诊断中出现三次,因为它有三个不同的检查 ID。 C1 和 C2 是两次独立的通过事件,不是应当丢弃的重复结果记录。 P3 出现两次,因为它有 C5 和 C6。P4 没有事件;其右侧空列 并不描述一次新检查。七条连接结果是匹配组合加上未匹配的 P4 行, 不是七个项目或七次检查的清单。 修正查询先把实际检查汇总为每项目一行,再与四条项目记录连接。 现在外层查询的 COUNT(*) 统计项目,COALESCE 为没有事件的项目 提供零事件计数。 基准场景的错误查询、诊断和修正查询,确实已在本地用 SQLite 3.51.0 对这套虚构数据执行。四个规定的数据场景都与独立手工编写的预期行一致。 没有测试模型,也没有访问生产数据库或客户数据。这些观察不能证明 大规模数据下的性能,也不能证明它适用于不同表结构或不同问题。