我通过连接查询查询两个表,以确定结果集中approved
列中的每一行是否TRUE
。
SELECT
`approvals`.`approved`
FROM `sign_ins`
RIGHT JOIN `approvals` ON
`sign_ins`.`user` = `approvals`.`user`;
这将为每个用户返回一个布尔值的结果集,例如。
1
0
0
1
1
我的php代码遍历这些行,并通过返回false并在其中任何值
0
时中断循环来确定是否所有行都被批准。不过,我认为如果不需要遍历结果集,那么它会更高效、更优化;毕竟,我只关心一件事:如果所有行的值都是TRUE
,那么就approved
;否则就TRUE
。我可以用mysql查询来实现这一点吗?
谢谢。
最佳答案
如果你只想得到真正的结果,那就去要求吧!
SELECT
`approvals`.`approved`
FROM `sign_ins`
RIGHT JOIN `approvals` ON
`sign_ins`.`user` = `approvals`.`user`;
WHERE `approvals`.`approved` = 1