为什么这个mysqli php调用失败?
我试图从一个表中收集一些“计数”来填充一个值对象。我在本地服务器上运行它,它在某种程度上起作用,我想这确实意味着它不起作用。用于系统跟踪检查和检查数据,此函数调用过去检查的历史记录。第一部分调用“inspections”表以获取该程序的检查ID,子部分选择get counts以获取检查的项目数、符合要求的项目数等等 这就是它的要点。它返回正确数量的对象,只返回部分ID,并返回其他ID的副本。我试着做左连接,我试过ORDER BY,我已经玩了很多次了,我不明白为什么它复制了一些检查ID并删除了其他ID。以下是守则的相关部分:为什么这个mysqli php调用失败?,mysql,mysqli,Mysql,Mysqli,我试图从一个表中收集一些“计数”来填充一个值对象。我在本地服务器上运行它,它在某种程度上起作用,我想这确实意味着它不起作用。用于系统跟踪检查和检查数据,此函数调用过去检查的历史记录。第一部分调用“inspections”表以获取该程序的检查ID,子部分选择get counts以获取检查的项目数、符合要求的项目数等等 这就是它的要点。它返回正确数量的对象,只返回部分ID,并返回其他ID的副本。我试着做左连接,我试过ORDER BY,我已经玩了很多次了,我不明白为什么它复制了一些检查ID并删除了其他
$stmt = mysqli_prepare($this->connection,
"SELECT
i.id,
i.assign_date,
i.start_date,
i.complete_date,
i.complete,
i.inspection_type,
i.program_id,
(SELECT COUNT(t.inspected) FROM insp_items t WHERE t.inspection_id = i.id && t.inspected = 1) AS inspected,
(SELECT COUNT(t.status) FROM insp_items t WHERE t.inspection_id = i.id && t.status = 0) AS ic,
(SELECT COUNT(t.status) FROM insp_items t WHERE t.inspection_id = i.id && t.status = 1) AS icw,
(SELECT COUNT(t.status) FROM insp_items t WHERE t.inspection_id = i.id && t.status = 2) AS nic,
(SELECT COUNT(t.status) FROM insp_items t WHERE t.inspection_id = i.id && t.status = 3) AS na
FROM inspections i
WHERE i.program_id = ? GROUP BY i.id");
$this->throwExceptionOnError();
非常感谢您的帮助或建议。谢谢。按i.id删除
组
-没有理由拥有它,因为您没有聚合功能
子选项使用聚合功能
计数
,但它们本身不是聚合结果。删除按i.id分组
-没有理由拥有它,因为您没有聚合功能
子选择使用聚合功能
计数
,但它们本身不是聚合结果。代码检查严格用于改进工作代码。我已将您的问题迁移到stackoverflow,在那里您更有可能获得有关问题的帮助。一旦你的问题开始工作,你可以随时把它带回代码评审,以获得额外的输入。代码评审严格来说是为了改进工作代码。我已将您的问题迁移到stackoverflow,在那里您更有可能获得有关问题的帮助。一旦问题起作用,请随时将其带回代码评审,以获取更多输入。