id    name    kecheng    chengji
1     张三    语文        70
2     张三    数学        90
3     李四    语文        85
4     李四    数学        87
5     李四    英语        88
6     王五    语文        79
7     王五    数学        90
8     王五    英语        82
用一条sql语句查询三门课程的成绩都大于80分的学生姓名

解决方案 »

  1.   

    select name, count(chengji) as 总分 from 表名 where 总分>80 group by name
      

  2.   

    select name from tablename where sum(chengji)>80 group by name
      

  3.   

    select [name] from biao group by [name] having (sum(chengji)/count([name])) > 80试试吧,凭感觉写的
      

  4.   

    select name from biao where name  not in (select name from biao where chengji<80)
      

  5.   

    select name from [tableName] where chengji > 80 group by name having count(*) >= 3
      

  6.   

    胡说,楼上的都是错的。
    select [name] from (select [name], min(chengji) minfen from test1 group by [name])a where minfen > 80
      

  7.   

    select name from biao where name not in (select name from biao where chengji<80)
      

  8.   


    select id name kecheng chengji from tablename t where not exists(select name from tablename t where chengji<80 and t.name=name) 
      

  9.   

    count不是计数吗,怎么变成总分了
      

  10.   


    修改下 select distinct name from tablename t where not exists(select name from tablename t where chengji<80 and t.name=name) 
      

  11.   

    create table w(id int identity, name varchar(20), kecheng varchar(20), chengji int)
    insert into w values(' 张三 ','语文', 70)
    insert into w values('张三 ','数学', 90)
    insert into w values('张三 ','英语', 9)
    insert into w values( '李四 ','语文',85)
    insert into w values( '李四',' 数学', 87)
    insert into w values('李四',' 英语' ,88)
    insert into w values('王五 ','语文' ,79)
    insert into w values('王五', '数学', 90)
    insert into w values('王五' ,'英语' ,82)insert into w values('主流 ','语文' ,79)
    insert into w values('主流', '数学', 60)
    insert into w values('主流' ,'英语' ,82)insert into w values('猪八 ','语文' ,98)
    insert into w values('猪八', '数学', 89)
    insert into w values('猪八' ,'英语' ,82)select name from w where name not in(select name from w where chengji<80) group by name
      

  12.   

    select name from zz where name not in(select name from zz where chengji<80) group by name
      

  13.   

    select  name from w a where not exists(select * from w where a.name=name and chengji<80)group by name=================
    select distinct name from w a where not exists(select * from w where a.name=name and chengji<80)
      

  14.   

    select name from biao where name not in (select name from biao where chengji<80)
    这个应该是对的了 
      

  15.   

    我在补充点呵呵:
    在加个
    having count(chengji)=3
      

  16.   

    select name, chengji from 表名 where chengji>80 
      

  17.   


    select distinct name
    from list a
    where not exists(select * from list where name=a.name and <=80)