SQL高级查询语句

发布 2021-05-02 03:03:28 阅读 4194

--交互式sql语句。

1.1 创建数据库(unis_db_日期)及其基本表(学生、课程、选课)

1) 建立一个“学生”表student,它由学号sno、姓名sname、性别ssex、年龄sage、所在系sdept五个属性组成,其中学号为主属性,ssex默认为‘男’,年龄大于0。

2) 建立“课程”表course,包括课程号cno,课程名称cname,选修课程cpno, 学分credit,要求cno建立主键,cpno是外键。

3) 建立“选课”表studentcourse,包括学号sno,课程号cno,成绩grade,要求建立主键及与student及course表联接的外键。

1.2 数据查询。

1) 查询student表的所有信息。

2) 查询学生的姓名和出生年(2010-年龄,并命名为birth)。

3) 查询年龄在20-22之间的学生信息。

4) 查询数学系(math)学生的学号和姓名。

5) 查询选修了课程的学生学号(distinct)。

6) 查询选修课程号为c1的学生号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同按学号的升序排列。

7) 查询选修课程号为c1且成绩在80~90之间的学生学号和成绩,并成绩乘以0.8输出。

8) 查询数学系(math)或计算机系(cs)姓张的学生的信息。

9) 查询数学系(math)或计算机系(cs)姓张年龄为21-22的学生信息。

10) 查询学生表中年龄不为空的学生信息。

11) 查询各个课程号、相应的选课人数及平均分。

12) 查询各个课程号、相应的选课人数及平均分,且平均分大于80的课程号。

13) 查询各个课程号、相应的选课人数,且该课程平均分大于80的,并按课程号的降序排列。

1.3 连接查询。

1) 把学生表和选课表广义连接。

2) 查询学生的选课信息(学生表与选课表的自然连接)。

3) 求每门课的先行课的先行课。

4) 学生表与选课表的左外连接、右外连接及全外连接。

5) 查询选修‘操作系统’的学生姓名。

1.4 嵌套查询。

1) 使用带有in谓词的子查询,查询选修了课程号为c1的学生姓名。

2) 查询学生选修课程成绩大于该课程平均分的选课信息。

3) 查询其他系中年龄大于cs系某个学生的学生信息。

4) 查询其他系中年龄大于cs系所有学生的学生信息。

5) 查询没有选修‘操作系统’的学生姓名。

1.5 集合查询(本题中要求使用集合操作)

1) 查询选修了课程c1或c3的学生信息。

2) 查询选修了数据结构和高等数学的学生信息。

3) 查询选修了数据结构没有选修高等数学的学生信息。

1.6 数据更新。

1) 往学生表中插入学号为8009,姓名为刘刘,性别为男的学生信息。

2) 往课程表中插入课程号为c4,课程名为数据库,先行课是c2,学分为4的课程信息。

3) 把学生的学号及该学生所选课的平均成绩,按降序排列,存放到数据库中。

4) 按院系统计,各院选c1课程的平均分,按降序排列,存放到数据库中。

1.7 附加:建表及数据查询。

1) 建立学生宿舍表(学生姓名、宿舍号、所在系)其中学生姓名和宿舍号为主键,所在系默认为‘is’。

2) 查询信息系(‘is’)的学生姓名和所在宿舍。

3) 查询所有姓‘陈’的且姓名为三个字的学生姓名和宿舍号。

4) 查询名字中有‘陈’的学生姓名和宿舍号。

5) 查询名字中第二个字为‘陈’的学生姓名和宿舍号。

6) 查询名字为‘陈%’的宿舍号。

7) 查询除了姓陈的其余学生姓名和宿舍号。

8) 查询宿舍号为‘14_37’的学生姓名。

9) 查询宿舍号为以1开头的宿舍。

10) 查询宿舍号中有1的宿舍。

高级SQL查询语句练习

结合数据库系统原理教学的理论知识,通过实验让学生熟悉高级sql的用法,掌握sql语言的数据定义,及其他高级功能。普通pc windows系列操作系统 ibm db2 v8.1 数据库管理系统。c顾客cid cname city discnt c001 李广天津 10.00 c002 王开基北京 12...

SQL查询语句的高级应用

一 简单查询 简单的transact sql查询只包括选择列表 from子句和where子句。它们分别说明所查询列 查询的 表或视图 以及搜索条件等。例如,下面的语句查询testtable表中姓名为 张三 的nickname字段和email字段。select nickname,email from ...

SQL查询语句学习

第一部分sql查询语句的学习。1 看ppt第三章 1 3.3节的内容,了解基本的sql语句的结构和相关关键字的用法。大概花一天时间结合以下习题了解sql查询语句的基本用法。2 习题的数据表都放在数据库中的northwind目录下,如果你的数据库不是中文的,请自己导入我们提供的中文northwind数...