数据库原理实验2数据查询.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PAGE9

PAGE

信息工程学院

信息工程学院

实验报告

实验报告

课程名称数据库原理

实验序号2

实验项目数据查询

实验地点

实验学时实验类型验证性

指导教师实验员

专业班级

学号 姓名

年月日

成绩:A

教师评语

该学生本次实验的内容丰富,完成的操作步骤详细具体,实验结果正确,在实验报告的填写中态度十分严谨,对数据分析有自己的见解。

一、实验目的及要求

1、掌握select语句进行查询语句的一般格式;

2、熟练掌握简单查询、连接查询、嵌套查询的操作方法。

二、实验原理与内容

数据查询是数据库的核心操作。SQL语言提供了SELECT语句进行数据库的查询,该语句具有灵活的使用方式和丰富的功能。其一般格式为

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

FROM表名或视图名[,表名或视图名]..

[WHERE条件表达式]

[GROUPBY列表1[HAVING条件表达式]]

[ORDERBY列表2[ASC|DESC]]

整个SELECT语句的含义是:根据WHERE子句的设定条件,从FROM子句指定的基本表或视图中找出满足条件的元组,再按照目标表达式规定的属性列选出元组中的对应属性形成结果。如果由GROUP子句,则将结果按列名1的值进行分组,该属性列值相等的元组为一个组。如果GROUP子句带HAVING短语,则只输出满足指定条件的组。如果由ORDER子句,则结果表还要按列名2的值升序或降序方式排序.

三、实验软硬件环境

装有MicrosoftSQLServer2008ManagementStudio的电脑

实验过程(实验步骤、记录、数据、分析)

实验准备:在实验一的基础上(包括数据库的建立、定义表和添加表内容)进行实验,下面分别为depts表、students表、courses表、reports表。

一、简单的选择与投影查询

1、无条件查询

1.1查询全体学生的详细记录。这是一个无条件的选择查询,其命令为:

其命令为:

select*fromstudents

运行结果如右图,显示整张表的内容。

1.2查询全体学生的姓名(Sname)、学号(Sno)、所在系(dno)。这是一个无条件的投影查询,其命令为:

selectsname,ssex

fromstudents

运行结果如右图,显示了表中的三列。

1.3查询全体学生的姓名(Sname)、出生年份及学号(Sno)。其命令为:

selectsno,sname,2017-sageasbirthfromstudents

运行结果如右图,显示了三列内容。

1.4查询全体学生的姓名、出生年份和学号,要求用小写字母表示学号中的字母。其命令为:

selectsname,birth:title,YEAR(GETDATE())-sagebirthyear,LOWER(sno)lsno

fromstudents

运行结果如右图,显示了四列内容。

1.5查询选修了课程的学生学号。其命令为:

selectdistinctsno

fromreports

运行结果如右图,distinct短语是为了消去查询结果中的重复值。

2、条件查询

(1)比较条件

1.1查询d03系全体学生的学号(Sno)和姓名(Sname)。其命令为:

selectsno,sname

fromstudents

wheredno=d03

运行结果如右图,显示了d03系的全体学生姓名与学号。

1.2查询所有年龄在18~22岁(包括18岁和22岁)之间的学生姓名(Sname)及年龄(Sage)。其命令为:

selectsno,sage

fromstudents

wheresage=18andsage=20

运行结果如右图,共有5名在18岁到20岁的学生。

(2)谓语条件

2.1查询年龄在18~22岁(包括18岁和22岁)之间的学生姓名(Sname)及年龄(Sage)。其命令为:

selectsno,sage

fromstudents

wheresagebetween18and20

运行结果如右图,结果与比较条件的结果一样。

2.2查询年龄不在18-22岁之间的学生姓名(Sname)及年龄(Sage)。其命令为:

selectsno,sage

fromstude

文档评论(0)

A女汉子~小郭 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档