我有一个表t1(下面是真实表的非常简化的版本)Name Subject PassA Math YesA English NoA Science NoB Math NoB English NoB Science No我需要查询未通过任何主题的所有名称(pass =否)`从t1中选择Passif(name),其中Pass ='否'并且Pass '是'不起作用 最佳答案 Select distinct(name) from t1 where Pass = 'No' and Pass <> 'Yes'这是行不通的,因为WHERE子句中的表达式一次只评估一行,而不是整个组。您的Pass列在任何给定的行上不能同时具有'No'和'Yes'值,因此,上面的查询将仅过滤Pass ='No'的行,而不管是否还有其他带有'Yes'的行'。对于查询的解决方案,可以这样编写:SELECT nameFROM t1GROUP BY nameHAVING SUM(Pass = 'Yes') = 0关于mysql - 从具有value1但不具有value2的表中检索项目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51245387/
10-15 17:16