桂电七院数据库实验报告二

实验目的

1、掌握select语句的基本语法;
2、熟练掌握表的数据简单查询、数据排序;
3、熟练掌握表的连接查询的表示;
4、掌握等值连接与非等值连接、自身连接、外连接以及复合条件连接操作。

实验内容与步骤

在前面建立的数据库student000的表中进行如下操作:
1、查询全体学生的学号和姓名;

use 自己的数据库名字
select
	sname,
	sno
from
	Student;

2、查询全体学生的详细记录;

use 自己的数据库名字
select
	sname,
	sno,
	ssex,
	sage,
	sdept
from
	Student;

3、查询全体学生的姓名、出生年份和所在系;

use 自己的数据库名字
select
	sname,
	2021-sage,
	sdept
from
	Student;

4、查询选修了课程的学生学号;

use 自己的数据库名字
SELECT
	sno
FROM
	sc
GROUP BY
	sno;

5、查询计算机系全体学生的姓名;

use 自己的数据库名字
select
	sname

from
	Student
where 
sdept='计算机'

6、查询考试成绩不及格的学生姓名;

use 自己的数据库名字
select
	Student.sname
from
	student,sc
where
	sc.grade<60 and Student.sno=sc.sno;

7、查询年龄在20~23岁之间(包括20和23岁)的学生姓名、所在系和年 龄;

use 自己的数据库名字
select
	sname,sdept,sage
from
	student
where
	sage>=20 and sage<=23;

8、查询年龄不在20~23岁之间的学生姓名、所在系和年龄;

use 自己的数据库名字
select
	sname,sdept,sage
from
	student
where
	sage<20 or sage>23;

9、查询电子机械系和应用数学系学生的姓名和性别;

use 自己的数据库名字
select
	sname,ssex
from
	student
where
	sdept='电子机械' or sdept='应用数学';

10、查询既不是电子机械系又不是应用数学系学生的姓名和性别;

use 自己的数据库名字
select
	sname,ssex
from
	student
where
	sdept!='电子机械' and sdept!='应用数学';

11、查询所有姓刘的学生的学号和姓名;

use 自己的数据库名字
select
	sno,sname
from
	student
where
	sname like'刘%';

12、求缺少成绩的学生的学号和课程号;

use 自己的数据库名字
select
	sno,cno
from
	sc
where
	grade is NULL;

13、查询没有选课的学生的学号;

use 自己的数据库名字
select 
	Student.sno
from
	Student
where Student.sno NOT IN (select distinct sc.sno from sc)

14、查询所有有成绩的学生的学号和课程号;

use 自己的数据库名字
select
	sno,cno
from
	sc
where
	grade is not NULL;

15、查询计算机系年龄在20岁以下的学生姓名;

use 自己的数据库名字
select
	sname
from
	Student
where 
	sdept='计算机' and sage<20

16、查询每个学生及其选修课课程的情况;(用等值连接和自然连接两种方法查询,比较查询结果,分析等值连接和自然连接的区别);
等值连接:

use 自己的数据库名字
select Student.*,sc.* 
from 
	Student,sc 
where Student.sno=sc.sno

自然连接:

use 自己的数据库名字
select Student.sno,sname,ssex,sage,sdept,sc.cno,sc.grade from Student,sc where Student.sno=sc.sno;

17、求学生的学号、姓名、选修的课程名及成绩;

use 自己的数据库名字
select 
	Student.sno,Student.sname,course.cname,sc.grade
from
	Student,course,sc

where Student.sno=sc.sno and course.cno=sc.cno
18、求选修了1号课程且成绩为90分以上的学生学号、姓名和成绩;

use 自己的数据库名字
select
	sc.sno,sname,grade
from
	sc,Student
where
	sc.cno=1 and grade>90 and Student.sno=sc.sno

19、查询每一门课的间接先修课

use 自己的数据库名字
select
	x.cno,
	y.cpno
from
	course x,
	course y
where
	x.cpno = y.cno
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值