(1):
select 姓名,科目,成绩
from t表 a
where not exists(select *
from t表 b
where b.成绩 < 80 and a.姓名 = b.姓名 and a.科目 = b.科目)
(2):
delete
from t表
where id not in(
select id
from t表 a
where id in(select min(id)
from t表 b
where a.姓名 = b.姓名 and a.科目 = b.科目 and a.成绩 = b.成绩)
)
第一个的sql语句这样子写:select 姓名,科目,成绩 from 表名 where 成绩>80 group by 成绩
1. select 姓名,科目,成绩 from t表 where 成绩>=80
2.这个第二道题出的有点问题吧,“删除除id不同外,其他信息重复的行”
姓名不一样, 成绩一样也删除?
1、select 姓名,科目,成绩 from t where 姓名 not in (select 姓名 from t where 成绩 < 80)
2、delete from t where id in (select id from t a where id in (select max(id) from t b where a.姓名=b.姓名 and a.科目 = b.科目 and a.成绩 = b.成绩))