Mysql 如何一次检查多行值以在sql中重新运行某些内容?
我有一个场景,我想从一个表中检索记录,但基于某些条件。假设表1有以下记录 表2有以下记录 列review_id是表1中的外键。我想根据表2中的“已验证”字段从表1中选择ID。如果针对特定ID的所有值均为null或null与1s的混合,则选择此选项。如果任何值为0,则不应选择该特定ID的结果。 对于上述给定示例数据: 应返回ID 5052515048,并Mysql 如何一次检查多行值以在sql中重新运行某些内容?,mysql,sql-server,Mysql,Sql Server,我有一个场景,我想从一个表中检索记录,但基于某些条件。假设表1有以下记录 表2有以下记录 列review_id是表1中的外键。我想根据表2中的“已验证”字段从表1中选择ID。如果针对特定ID的所有值均为null或null与1s的混合,则选择此选项。如果任何值为0,则不应选择该特定ID的结果。 对于上述给定示例数据: 应返回ID 5052515048,并 不应返回5053,因为表2中ID=5053的4个值中有一个值是0。这听起来像是不存在: select t1.* from table t1
不应返回5053,因为表2中ID=5053的4个值中有一个值是0。这听起来像是
不存在:
select t1.*
from table t1
where not exists (select 1
from table2 t2
where t2.review_id = t1.id and
t2.is_verified = 0
);
我想这只是巧合非常感谢你@Gordon