数据查询报告.docx

上传人:b****7 文档编号:9840712 上传时间:2023-02-07 格式:DOCX 页数:32 大小:1.27MB
下载 相关 举报
数据查询报告.docx_第1页
第1页 / 共32页
数据查询报告.docx_第2页
第2页 / 共32页
数据查询报告.docx_第3页
第3页 / 共32页
数据查询报告.docx_第4页
第4页 / 共32页
数据查询报告.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

数据查询报告.docx

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

数据查询报告.docx

数据查询报告

实验1SQLServer2005环境

(1)对象资源管理器的使用

①进入“SQLServerManagementStudio”。

图1.1

②了解系统数据库和数据库的对象。

图1.2

 

③试试不同数据库对象的操作功能

图1.3

(3)查询分析器的使用

usestudentsys

select*fromtblstudent

Go

图1.4

(4)了解SQLServerManagementStudio中其他窗口的使用方法。

图1.5

实验2创建数据库和表

(1)在“对象资源管理器”中创建数据库YGGL。

图2.1

设定数据库的增长方式如图2.2

图2.2

图2.3

图2.4

图2.5

(2)删除YGGL数据库

USEmaster

GO

DROPDATABASEYGGL

(3)使用T-SQL语句创建数据库YGGL

createdatabaseYGGL

on

name='YGGL_data',

filename='C:

\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\Data\YGGL.mdf',

size=10MB,

maxsize=50MB,

filegrowth=5%

logon

name='YGGL_log',

filename='C:

\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\Data\YGGL_log.ldf',

size=2MB,

maxsize=5MB,

filegrowth=1MB

Go

(4)使用T-SQL语句创建表

useYGGL

go

createtableemployees

employeeIDchar(6)notnullprimarykey,

Namechar(10)notnull,

Educationchar(4)notnull,

Birthdaydatetimenotnull,

Sexbitnotnulldefault1,

WorkYeartinyintnull,

Addressvarchar(40)null,

PhoneNumberchar(12)null,

DepartmentIDchar(3)notnull

Go

useYGGL

go

createtableDepartments

DepartmentIDchar(3)notnullprimarykey,

DepartmentNamechar(20)notnull,

Notevarchar(100)null

go

 

useYGGL

createtableSalary

EmployeeIDchar(6)notnullprimarykey,

InComefloatnotnull,

OutComefloatnotnull

go

 

实验3表数据插入、修改和删除

(1)在“对象资源管理器”中初始化数据库YGGL中所有表的数据。

图3.1

图3.2

图3.3

 

(2)使用T-SQL命令插入表数据。

删除

useYGGL

go

insertintoemployeesvalues('000001','王林','1956-01-23','True','中山路-1-508','210003','335568','null','2',)

插入

useYGGL

go

insertintoSalary(employeeID,Income,Outcome)

values('000001',2100.8,123.09)

(4)使用SQL语句修改表数据。

①使用SQL命令修改表Salary中的某个记录的字段值:

updatesalary

setincome=2890

whereemployeeid='000001'

执行上述语句,将编号为000001的职工收入改为2890

②将所有职工收入增加100:

updatesalary

setincome=income+100;

执行完,打开Salary表查看数据的变化。

③使用SQL命令删除表Employmees中编号为000001的职工信息:

deletefromemployees

whereemployeeid='000001'

④删除所有女性员工信息:

deletefromemployees

wheresex=0

⑤使用TRANCATETABLE语句删除表中所有行:

truncatetablesalary

执行上述语句,将删除Salary表中的所有行。

 

实验4数据库的查询和视图

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

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

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

useYGGL

select*

fromemployees

go

 

②用SELECT语句查询Employees表中每个雇员的地址和电话。

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

useYGGL

go

selectaddress,phonenumber

fromemployees

③查询EmployeeID为000001的雇员的地址和电话。

useYGGL

go

selectaddress,phonenumber

fromemployees

whereemployeeid='000001'

go

④查询Employees表中男雇员的地址和电话,使用as子句将结果中各列的标题分别指定为地址、电话。

useYGGL

go

selectaddressas地址,phonenumberas电话

fromemployees

wheresex=1

go

⑤查询Employees表中员工姓名和性别,要求Sex值为1时显示“男”,为0时显示为“女”。

selectnameas姓名,

case

whensex=1then'男'

endas性别

fromemployees

⑥计算每个员工的实际收入。

useYGGL

go

selectemployeeID,实际收入=income-outcome

fromsalary

⑦获得员工总数。

selectcount(*)

fromemployees

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

useYGGL

go

selectdepartmentid

fromemployees

wherenamelike'王_'

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

useYGGL

go

selectemployeeid

fromsalary

whereincomebetween2000and3000

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

useYGGL

go

selectemployeeIDas编号,incomeas收入

into收入在以上的员工

fromsalary

whereincome>1500

(4)子查询的使用。

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

useYGGL

Go

select*fromemployees,departmentswhere

dbo.employees.departmentID=dbo.departments.departmentID

anddepartmentName='财务部'

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

useYGGL

go

selectname

fromemployees

wheredepartmentidin

selectdepartmentid

fromdepartments

wheredepartmentname='财务部'

and

birthday!

>all

selectbirthday

fromemployees

wheredepartmentidin

selectdepartmentid

fromdepartments

wheredepartmentname='研发部'

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

useYGGL

go

selectname

fromemployees

wheredepartmentidin

selectdepartmentid

fromsalary

whereincome>all

selectincome

fromsalary

wheredepartmentidin

selectemployeeid

fromemployees

wheredepartmentid=

selectdepartmentid

fromdepartments

wheredepartmentname='财务部'

(3)连接查询的使用。

1查询每个雇员的情况及其薪水的情况。

useYGGL

go

selectemployees.*,salary.*

fromemployees,salary

whereemployees.employeeid=salary.employeeid

2使用内连接的方法查询名字为“王林”的员工所在的部门。

useYGGL

go

selectdepartmentname

fromdepartmentsjoinemployees

ondepartments.departmentid=employees.departmentid

whereemployees.name='王林'

3查找财务部收入在2000以上的雇员姓名及其薪水详情。

useYGGL

go

selectname,income,outcome

fromdepartments,salary,employees

whereemployees.employeeid=salary.employeeid

andemployees.departmentid=departments.departmentid

anddepartmentname='财务部'

andincome>2000

(5)聚合函数的使用

1求财务部雇员的平均收入。

useYGGL

go

selectavg(income)as'财务部平均收入'

fromsalary

whereemployeeidin

selectemployeeid

fromemployees

wheredepartmentid=

selectdepartmentid

fromdepartments

wheredepartmentname='财务部'

2求财务部雇员的平均实际收入。

useYGGL

go

selectavg(income-outcome)as'财务部雇员平均实际收入'

fromsalary

whereemployeeidin

selectemployeeid

fromemployees

wheredepartmentid=

selectdepartmentid

fromdepartments

wheredepartmentname='财务部'

3求财务部雇员的总人数。

useYGGL

go

selectcount(employeeid)

fromemployees

wheredepartmentid=

selectdepartmentid

fromdepartments

wheredepartmentname='财务部')

(6)GROUPBY、ORDERBY子句的使用。

1查找Employees表中男性和女性的人数。

useYGGL

go

selectsex,count(sex)

fromemployees

groupbysex;

2查找员工数超过2人的部门名称和员工数量。

useYGGL

go

selectemployees.departmentid,count(*)as人数

fromemployees,departments

whereemployees.departmentid=departments.departmentid

groupbyemployees.departmentid

havingcount(*)>2

3将雇员的情况按收入由高到低排列。

useYGGL

go

selectemployees.*,salary.*

fromemployees,salary

whereemployees.employeeid=salary.employeeid

Orderbyincome

实验4.2视图的使用

实验内容

(1)创建视图

1创建YGGL数据库上的视图DS_VIEW,视图包含Departments表的全部列。

createviewDS_VIEW

asselect*fromdepartments

2创建YGGL数据库上的视图Employees_view,视图包含员工号码、姓名和实际收入三列。

createviewEmployees_view(Employeeid,name,realincome)

asselectemployees.employeeid,name,income-outcome

fromemployees,salary

whereemployees.employeeid=salary.employeeid

(2)查询视图。

1从视图DS_VIEW中查询出部门号为3的部门名称。

selectdepartmentname

fromds_view

wheredepartmentid='3'

2从视图Employees_view查询出姓名为“王林”的员工的实际收入。

selectrealincome

fromemployees_view

wherename='王林'

(3)更新视图。

1向视图DS_VIEW中插入一行数据:

“6,广告部,广告业务”。

insertintods_viewvalues('6','广告部','广告业务')

2修改视图DS—VIEW,将部门号为5的部门名称修改为“生产车间”。

updateds_viewsetdepartmentname='生产车间'

wheredepartmentid='5'

3修改视图Employees_view中员工号为“000001”的员工的姓名为“王浩”

updateemployees_viewsetname='王浩'

whereemployeeid='000001'

4删除视图DS_VIEW中部门号为“1”的一行数据。

deletefromds_view

wheredepartmentid='1'

(4)删除视图DS_VIEW。

dropviewds_view

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

当前位置:首页 > 人文社科 > 文化宗教

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

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