随笔 - 94  文章 - 0  评论 - 2  阅读 - 12万

学生表

#新建数据库
create database Practice

## 新建学生表
create table student(

sid int(11) primary key not null,

sname char(25) not null,

age int(11) not null,

sex char(2) not null,

department char(40) ,

address char(200) ,

birthplace varchar(256)

);

# 新建成绩表
create table sc(

sid int(11) not null,

cid int(11) not null,

grade int(11)

);

## 新建课程表
create table course(

cid int(11) not null primary key default 4,

cname char(40),

teacher char(40)

);

#以下是插入课程表的数据

delete from course ;

insert into course values('8108001','math','sandy');

insert into course values('8108002','english','sherry');

insert into course values('8108003','computer','sandy');

insert into course values('8108004','web','sandy');

insert into course values('8108005','java','sandy');

insert into course values('8108006','C languge','sherry');

insert into course values('8108007','python','xiaozhu');

insert into course values('8108008','testing','xiaozhu');

insert into course values('8108009','linux','sherry');

insert into course values('8108010','shell','sherry');

#以下是插入成绩级表的数据

delete from sc;

insert into sc values('3108001','8108010','90');

insert into sc values('3108001','8108003','67');

insert into sc values('3108002','8108003','54');

insert into sc values('3108002','8108010','84');

insert into sc values('3108003','8108003','78');

insert into sc values('3108004','8108004','89');

insert into sc values('3108005','8108006','56');

insert into sc values('3108006','8108005','60');

insert into sc values('3108007','8108004','79');

insert into sc values('3108008','8108008','89');

insert into sc values('3108009','8108002','46');

insert into sc values('3108010','8108003','87');

insert into sc values('3108011','8108001','85');

insert into sc values('3108011','8108002','81');

insert into sc values('3108012','8108001','97');

insert into sc values('3108012','8108002','55');

insert into sc values('3108013','8108002','86');

insert into sc values('3108013','8108001','71');

insert into sc values('3108014','8108002','69');

insert into sc values('3108014','8108001','78');

insert into sc values('3108015','8108002','67');

insert into sc values('3108016','8108001','85');

insert into sc values('3108016','8108003','85');

insert into sc values('3108016','8108002','85');

insert into sc values('3108016','8108004','85');

insert into sc values('3108016','8108005','85');

insert into sc values('3108016','8108006','80');

insert into sc values('3108016','8108007','79');

insert into sc values('3108016','8108009','36');

insert into sc values('3108016','8108010','78');

insert into sc values('3108016','8108008','88');

insert into sc values('3108016','8108021','83');

insert into sc values('3108015','8108001','85');

insert into sc values('3108015','8108003','85');

insert into sc values('3108015','8108004','85');

insert into sc values('3108015','8108005','85');

insert into sc values('3108015','8108006','80');

insert into sc values('3108015','8108007','79');

insert into sc values('3108015','8108009','36');

insert into sc values('3108015','8108010','78');

insert into sc values('3108015','8108008','88');

insert into sc values('3108015','8108021','83');


#以下是插入学生信息数据

delete from student;

insert into student values('3108001','wang min',21,'f','computer-tec','zhongshan road','jiangsu');

insert into student values('3108002','jidu',20,'m','english','zhongshan road','fujian');

insert into student values('3108003','wangqing',19,'f','computer-tec','zhongshan road','jiangsu');

insert into student values('3108004','liuxin',23,'f','chinese','zhongshan road','shanghai');

insert into student values('3108005','ligu',22,'f','computer-tec','zhongshan road','jiangsu');

insert into student values('3108006','songjia',19,'m','english','zhongshan road','jiangsu');

insert into student values('3108007','huamao',20,'f','chinese','zhongshan road','shanghai');

insert into student values('3108008','zhujiao',21,'f','english','zhongshan road','jiangsu');

insert into student values('3108009','wuyi',23,'m','computer-tec','zhongshan road','jiangsu');

insert into student values('3108010','jilian',18,'f','chinese','zhongshan road','hunan');

insert into student values('3108011','linbiao',22,'m','computer-tec','zhongshan road','jiangsu');

insert into student values('3108012','maoguai',21,'m','english','zhongshan road','fujian');

insert into student values('3108013','rongqi',23,'m','computer-tec','zhongshan road','jiangsu');

insert into student values('3108014','sangzi',20,'f','chinese','zhongshan road','hunan');

insert into student values('3108015','surui',16,'f','computer-tec','zhongshan road','fujian');

insert into student values('3108016','liushaoqi',24,'m','english','zhongshan road','hunan');

commit;

 

 

问题列表

1.sandy老师所教的课程号、课程名称;

select c.cid,cname from student s,sc,course c where s.sid=sc.sid and sc.cid=c.cid and teacher='sandy';

2.年龄大于20岁的女学生的学号和姓名;

select s.sid,sname from student s where age>20 and sex=f;

3.在学生表中按性别排序,且男在前女在后显示记录。

select * from student order by sex desc;

4.“wuyi”所选修的全部课程名称;

select cname from student s,sc t,course c where s.sid=t.sid and t.cid=c.cid and sname='wuyi';

5.所有成绩都在80分以上的学生姓名及所在系;

select DISTINCT sname,department from student s,sc t,course c where s.sid=t.sid and t.cid=c.cid and t.sid  not in (select sid from sc where grade<80 );

6.没有选修“english”课的学生的姓名;

select sname from student where   not sid in(SELECT sid from sc where cid in(SELECT cid from

course where cname = 'english' ))

7.与“jilian”同乡的男生姓名及所在系;

select sname,department from student where sex='m' and birthplace = (select birthplace from student where sname='jilian');

8.英语成绩比数学成绩好的学生;

select * from student s,(select t.sid,grade from sc t,course c,student s where c.cid=t.cid and s.sid=t.sid and cname = 'english') a,(select t1.sid,grade from sc t1,course c1,student s1 where c1.cid=t1.cid and s1.sid=t1.sid and cname = 'math') b where s.sid=a.sid and a.sid=b.sid and a.grade>b.grade;

9.选修同一门课程时,女生比所有男生成绩都好的学生名单;

select * from student s,sc t,student s1,sc t1 where s.sid=t.sid and s1.sid=t1.sid and s.sid=s1.sid and s.sex='f'and s1.sex='m' and

t.cid=t1.cid and t.grade>t1.grade;

10.至少选修两门及以上课程的学生姓名、性别;

select sname,sex from student s,sc t where s.sid=t.sid having count(t.cid)>=2

11.选修了sandy老师所讲课程的学生人数;

select count(sid) from student s where sid in (select distinct sid from sc where cid in (select cid from course where

teacher='sandy'));

12.本校学生中有学生姓名/性别重复的同学,请编写脚本查出本校所有学生的信息,显示学号,姓名,性别,总成绩,对于姓名/性别重复的学生信息只取总成绩最高的那一条记录。

select s.sid,sname,sex,sum(grade) from student s,sc t where s.sid=t.sid

group by  s.sid,sname;

13.“english”课程得最高分的学生姓名、性别、所在系;

select sname,sex,department from student where sid = (select sid from sc where grade =(select max(grade) from sc where cid= (select cid

from course where cname='english')));

posted on   卡哇伊的蜗牛  阅读(197)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示