数据库1数据查询.docx

上传人:b****3 文档编号:3125544 上传时间:2022-11-17 格式:DOCX 页数:15 大小:245.99KB
下载 相关 举报
数据库1数据查询.docx_第1页
第1页 / 共15页
数据库1数据查询.docx_第2页
第2页 / 共15页
数据库1数据查询.docx_第3页
第3页 / 共15页
数据库1数据查询.docx_第4页
第4页 / 共15页
数据库1数据查询.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

数据库1数据查询.docx

《数据库1数据查询.docx》由会员分享,可在线阅读,更多相关《数据库1数据查询.docx(15页珍藏版)》请在冰豆网上搜索。

数据库1数据查询.docx

数据库1数据查询

实验一数据库查询

课程名称:

数据库原理实验

实验类型:

验证型

实验名称

数据库查询

学时

4学时

实验目的:

使学生掌握SQLServerQueryAnalyzer的使用方法,加深对SQL和T-SQL语言的查询语句的理解。

熟练掌握表的基本查询,连接查询和嵌套查询,以及掌握数据排序和数据分组的操作方法。

实验原理:

SELECT[ALL|DISTINCT]<目标列表达式>[,<目标列表达式>]…

FROM<表名或视图名>[,<表名或视图名>]…

[WHERE<条件表达式>]

[GROUPBY<列名1>[HAVING<条件表达式>]]

[orderby<列名2>[ASC|DESC]];

实验方法:

将查询需求用T-SQL语言表示;在SQLServerQueryAnalyzer的输入区中输入T-SQL查询语句;设置QueryAnalyzer的结果区为StandardExecute(标准执行)或ExecutetoGrid(网格执行)方式;发布执行命令,并在结果区中查看查询结果;如果结果不正确,要进行修改,直到正确为止。

实验内容:

1.分别用带DISTINCT和不带DISTINCT关键字的SELELCT在student中进行查询.

带distinct:

Selectclass_id

fromstudent

不带distinct:

selectdistinctclass_id

fromstudent

2.将teacher表中各教师的姓名、教工号及工资按95%发放的信息,并将工资按95%发放后的列名改为‘预发工资’

selectteacher_id,teacher_name,salary*

as预发工资

fromteacher

3.查询course表中所有学分大于2并且成绩不及格的学生的信息.

selectdistinctstudent.*

fromstudent,course,sc

where=

and=

and>2

and<60

4.查询学分在4~8之间的学生信息.(用between..and和复合条件分别实现)

selectdistinctstudent.*

fromstudent,course,sc

where=

and=

and

between4and8

5.从student_course表中查询出学生为“g9940201”,“g9940202”的课程号、学生号以及学分,并按学分降序排列(用in实现)

select*

fromsc,course

wherestudent_idin('g9940201','g9940202')

and=

orderbydesc

6.从teacher表中分别检索出姓王的教师的资料,或者姓名的第2个字是远或辉的教师的资料

select*

fromteacher

whereteacher_name

like'王%'

orteacher_name

like'_远%'

orteacher_name

like'_辉%'

7.查询每个学生及其选修课情况

selectstudent_name,course_name

fromstudent,sc,course

where=

and=

8.以student表为主体列出每个学生的基本情况及其选课情况,如果学生没有选课,只输出其基本情况

selectstudent.*,course.*

fromstudentjoinsc

on=

leftjoincourse

on=

9.查询选修dep04_s001号课程且成绩在80分以上的学生信息。

(分别用连接,in和exists实现)

连接:

selectstudent.*

fromsc,student

where=

and='dep04_s001'

and>80

In:

select*

fromstudent

wherestudent_id

in(

selectstudent_id

fromsc

wherecourse_id='dep04_s001'

andgrade>80)

exists:

select*

fromstudent

whereexists(

selectstudent_id

fromsc

where=

andcourse_id='dep04_s001'

andgrade>80)

10.查询所有上计算机基础课程的学生的学号、选修课程号以及分数(分别用连接,in和exists实现)

连接:

selectsc.*

fromsc,course

where='计算机基础'

and=

In:

selectstudent_id,course_id,grade

fromsc

wherecourse_id

in(

selectcourse_id

fromcourse

wherecourse_name='计算机基础')

exists:

selectstudent_id,course_id,grade

fromsc

whereexists(

select*

fromcourse

wherecourse_id=

andcourse_name='计算机基础')

11.查询选修了课程名为“数据库基础”的学生学号和姓名(分别用连接,in和exists实现)

连接:

select,

fromsc,student,course

where='数据库开发技术'

and=

and=

In:

selectstudent_id,student_name

fromstudent

wherestudent_id

in(

selectstudent_id

fromsc

wherecourse_id=(

selectcourse_id

fromcourse

wherecourse_name='数据库开发技术'))

exists:

selectstudent_id,student_name

fromstudent

whereexists(

select*

fromsc

where=

and=(

selectcourse_id

fromcourse

wherecourse_name='数据库开发技术'))

12.查询所有计算机系学生的学号、选修课程号以及分数(分别用连接,in和exists实现)

连接:

selectsc.*

fromsc,department,student

where='计算机科学'

and=

and=

In:

select*

fromsc

wherestudent_id

in(

selectstudent_id

fromstudent

wheredepartment_id=(

selectdepartment_id

fromdepartment

wheredepartment_name='计算机科学'))

exists:

select*

fromsc

whereexists(

select*fromstudent

where=

and=(

selectdepartment_id

fromdepartment

wheredepartment_name='计算机科'))

13.查询每个dep_04系学生的总成绩、平均成绩,仅显示平均成绩及格的学生的记录。

select,sum(grade)as总成绩,avg(grade)as平均成绩

fromsc,student,department

where=

and=

and='dep_04'

groupby,student_name

havingavg(grade)>60

14.查询“数据库开发技术”的平均成绩

selectavg(grade)as数据库开发平均成绩

fromsc

wherecourse_idin(

selectcourse_id

fromcourse

wherecourse_name='数据库开发技术')

15.按职称查询教师的平均工资,并按总工资降序排列

selectprofession,avg(salary)as平均工资,sum(salary)as总工资

fromteacher

groupbyprofession

orderbysum(salary)desc

附录1:

教务管理数据库jwgl结构

student表结构

列名称

数据类型

长度

允许空值

说明

Student_id

Char

8

学生学号

Student_name

Varchar

8

学生姓名

Sex

Bit

1

性别

Age

Int

4

年龄

Class_id

Char

6

班级号

Department_id

Char

6

系编号

Address

varchar

50

家庭住址

Course表

字段名称

数据类型

长度

允许空

说明

Course_id

Char

10

课程号

Course_name

Varchar

20

课程名称

Book_id

Char

15

书标识

SC表

字段名称

数据类型

长度

允许空

说明

Course_id

Char

10

课程号

Student_id

Varchar

8

学生号

grade

Tinyint

成绩

credit

Tinyint

学分

Teacher表

字段名称

数据类型

长度

允许空

说明

Teacher_id

Char

9

教师编号

Teacher_name

nvarchar

8

教师姓名

Department_id

Char

6

所在系号

Profession

Nvarchar

16

职称

Sex

Bit

性别

phone

Nvarchar

15

电话

adress

Nchar

40

住址

Salary

Numeric

工资

Birth

Smalldatetime

出生日期

Postalcode

Numeric

6,0

邮编

Book表

字段名称

数据类型

长度

允许空

说明

Book_id

Char

13

书号

Book

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1