to feng2(蜀山风云): 可能是我没有表述清楚,我的意思是,如果我要选择 语文>60 and 数学>61 and 体育>99 and 政治>0 and 计算机>99 and 音乐>5 and ... 这样的70个科目的条件的限制, 那么可能就要嵌套很多层了,难道只能用这种办法解决吗?
select name from testa group by name having sum(case when km = '语文' and cj > 60 then 1 when km = '数学' and cj > 70 then 1 else 0 end) = 2NAME ---------- 李四 张三
where name in
(select distinct name from test where km='数学' and cj > 60)
and km='语文' and cj > 60;
where km in ('语文','数学') and cj > 60
group by name
having count(*) =2
如果有70个科目或者71个科目,
难道要嵌套70次吗?谢谢大家的指导,希望大家可以在讨论一下
如果用嵌套的方法那就真要嵌套70次了,所以嵌套的不好,慢
可能是我没有表述清楚,我的意思是,如果我要选择
语文>60 and 数学>61 and 体育>99 and 政治>0 and 计算机>99 and 音乐>5 and ...
这样的70个科目的条件的限制,
那么可能就要嵌套很多层了,难道只能用这种办法解决吗?
group by name
having sum(case when km = '语文' and cj > 60 then 1
when km = '数学' and cj > 70 then 1
else 0 end) = 2NAME
----------
李四
张三