数据库的查询和视图实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库的查询和视图实验(实习)报告实验名称数据库的查询和视图实验日期得分指导教师

系计算机系年级专业班次姓名学号

一.实验目的

掌握SELECT语句的基本语法;

掌握子查询的表示;

掌握连接查询的表示;

掌握SELECT语句的GROUP BY子句的作用和使用方法;

掌握SELECT语句的ORDER BY子句的作用和使用方法;

熟悉视图的概念和作用;

掌握视图的创建方法;

掌握如何查询和修改视图。

二.实验内容

(1)了解SELECT语句的基本语法格式;

(2)了解SELECT语句的执行方法;

(3)了解子查询的表示方法;

(4)了解连接查询的表示;

(5)了解SELECT语句的GROUP BY子句的作用与使用方法;

(6)了解SELECT语句的ORDER BY子句的作用;

(7)了解视图概念;

(8)了解视图的创建方法;

(9了解并掌握对视图的操作。

三.实验步骤

(1)SELECT语句的基本使用。

1、对于实验2给出的数据库表结构,查询每个雇员的所有数据。

新建一个查询,在“查询分析器”窗口中输入如下语句并执行

use YGGL

go

select*

from Employees

2用select语句查询employees表中每个雇员的地址和电话。新建一个查询,在“查询分析器”窗口中输入如下语句并执行:use YGGL

go

select Address,PhoneNumber

from Employees

3查询employeeID为000001的雇员的地址和电话。

use YGGL

go

select Address,PhoneNumber

from Employees

where EmployeeID='000001'

go

4查询employees表中女雇员的地址和电话,使用AS子句将结果中各列的标题分别指定为地址、电话。

use YGGL

go

select Address AS地址,PhoneNumber AS电话

from Employees

where Sex=0

go

5查询employees表中的员工姓名和性别,要求Sex的值为1时显示为‘“男”,为0时显示为“女”。select Name AS姓名,

CASE

when Sex=1 then'男'

when Sex=0 then'女'

end AS性别

from Employees

6计算每个雇员的实际收入。

use YGGL

go

select EmployeeID,实际收入=InCome-OutCome from Salary

7获得员工总数。

select COUNT(*)

from Employees

8找出所有姓王的雇员的部门号。

use YGGL

go

select DepartmentID

from Employees

where Name LIKE'王%'

9 找出所有收入在2000~3000之间的员工号码。select EmployeeID

from Salary

where InCome between 2000 and 3000

10 使用INTO子句,由表Salary创建“收入在1500以上的员工”表,包括编号和收入。use YGGL

go

select EmployeeID as编号,InCome as收入

INTO收入在以上的员工

from Salary

where InCome> 1500

(2)子查询的使用

1查找在财务部工作的雇员的情况。

use YGGL

go

select*

FROM Employees

where DepartmentID=

(

select DepartmentID

from Departments

where DepartmentName='财务部'

)

2 查找财务部年龄不低于研发部雇员年龄的的雇员的姓名。use YGGL

go

select Name

from Employees

where DepartmentID IN

(

select DepartmentID

from Departments

where DepartmentName='财务部'

)

AND

Birthday!>ALL

(

select Birthday

from Employees

where DepartmentID IN

(

select DepartmentID

from Departments

where DepartmentName='研发部'

)

)

3查找比所有财务部的雇员收入都要高的雇员的姓名。

use YGGL

go

select Name

from Employees

where EmployeeID IN

(

select EmployeeID

from Salary

where InCome>ALL

(

SELECT InCome

from Salary

where EmployeeID IN

(

select EmployeeID

from Employees

where DepartmentID=

(

select DepartmentID

from Departments

where DepartmentName='财务部'

)

)

)

)

相关文档
最新文档