sql 查询成绩都大于等于90的姓名


表student 有姓名、课程、成绩,三个字段,

课程名称未知,姓名对应的课程 成绩 也无知;

要求:查询所有成绩都大于等于90的姓名;

SELECT 姓名 from 
(select 姓名,min(成绩) mincj from student GROUP BY 姓名) student
where mincj>=90;

SELECT distinct 姓名 from student t where not EXISTS(SELECT 姓名 from student WHERE 成绩<90 and 姓名=t.姓名);
SELECT distinct 姓名 from student t where 姓名 not in(SELECT 姓名 from student WHERE 成绩<90 and 姓名=t.姓名);

 

复习下常用语句:

create database 数据库名;

use 数据库名; --切换到你创建的数据库

create table 表名(
字段 数据类型 非空 自动增长
proId int not null auto_increment,
proName varchar(20) not null,
primary key PK_positon(proId)设置主键
)

drop table 表名;--删除表

CREATE TABLE student (姓名 VARCHAR(255),课程 VARCHAR(255),成绩 int(3));

INSERT INTO student (姓名,课程,成绩) VALUES('张三','数学',90);
INSERT Into student VALUES('李四','语文',95);

UPDATE student set 成绩=70 where 姓名='王麻子' and 成绩=98 and 课程='历史';

DELETE from student where 姓名='张三' and 课程='化学';

SELECT * from student;

 Delete from tablename where 1=1 ---删除表中所有数据


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM