数据库考试题答案.docx

上传人:b****3 文档编号:1952860 上传时间:2022-10-25 格式:DOCX 页数:10 大小:18.98KB
下载 相关 举报
数据库考试题答案.docx_第1页
第1页 / 共10页
数据库考试题答案.docx_第2页
第2页 / 共10页
数据库考试题答案.docx_第3页
第3页 / 共10页
数据库考试题答案.docx_第4页
第4页 / 共10页
数据库考试题答案.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

数据库考试题答案.docx

《数据库考试题答案.docx》由会员分享,可在线阅读,更多相关《数据库考试题答案.docx(10页珍藏版)》请在冰豆网上搜索。

数据库考试题答案.docx

数据库考试题答案

考试

一、题目选择:

学号最后1位

试题

1,2

第一套

3,4

第二套

5,6

第三套

7,8

第四套

9,0

第五套

二、要求

一、完成题目后将sql语句帖在对应题目下方。

二、所有完成后将word文件保留为“班级-学号后两位-姓名”方式:

如“12-03-XXX”

三、提示

一、注意完成每一个小题后当即贴在word文档中。

二、只能在本机上提交,不能在1个机械上提交多份。

3、如有类似试卷,都取消成绩。

数据库

附加company数据库,共有五张表,结构如下。

依照要求完成以下各题。

(1)/*员工人事表employee*/

emp_no

char(5)

Notnull

primarykey

员工编号

emp_name

char(10)

Notnull

员工姓名

sex

char

(1)

Notnull

性别

dept

char(4)

Notnull

所属部门

title

char(6)

Notnull

职称

date_hired

datetime

Notnull

到职日

birthday

datetime

Null

生日

salary

int

Notnull

薪水

addr

char(50)

null

住址

(2)/*客户表customer*/

cust_id

char(5)

Notnull

primarykey

客户号

cust_name

char(20)

Notnull,

客户名称

addr

char(40)

Notnull,

客户住址

tel_no

char(10)

Notnull,

客户电话

zip

char(6)

null

邮政编码

(3)/*销售主表sales*/

order_no

int

Notnull

primarykey

订单编号

cust_id

char(5)

Notnull,

客户号

sale_id

char(5)

Notnull,

业务员编号

tot_amt

numeric(9,2)

Notnull,

订单金额

order_date

datetime

Notnull,

订货日期

ship_date

datetime

Notnull,

出货日期

invoice_no

char(10)

Notnull

发票号码

(4)/*销货明细表sale_item*/

order_no

int

Notnull,

primarykey

订单编号

prod_id

char(5)

Notnull,

primarykey

产品编号

qty

int

Notnull

销售数量

unit_price

numeric(7,2)

Notnull

单价

order_date

datetime

null

订单日期

(5)/*产品名称表product*/

pro_id

char(5)

Notnull

primarykey

产品编号

prod_name

char(20)

Notnull

产品名称

第一套

一、必做题

1、计算出sale_item表中每一笔销售数据的销售金额,并依照销售金额的大小排序。

selectorder_no,Qty*Unit_priceas销售金额

fromsale_item

orderby销售金额

2、检索product表和sale_item表中数量大于的相同产品的产品编号、产品名称、数量、单价。

selectpro_id,prod_name,Qty,Unit_price

fromproduct,sale_item

whereQty>2and=;

3、找出目前业绩未超过50000元的员工。

(要求用嵌套查询)

Selectemp_no,emp_name,sex,,.title,,,,fromemployee,saleswhere=andtot_amt>500000

4、设置sales表和sale_item的外键关系为“层叠”。

修改sales表中发票号码为I000000004的定单,将其发票号码改成I000000054,其定货明细数据也一并修改。

altertablesales

addconstraintFK_salesforeignkey(order_no)referencessale_item(order_no)

updatesalessetinvoice_no='I000000054'whereinvoice_no='I000000004'

5、创建视图v1,包括2012-8-1200:

00:

00出货的信息(定单号,产品号,产品名,出货日期)

createviewv1

as

selectorder_no,prod_id,prod_name,ship_date

fromsales,sale_item,product

 

6、创建一个默许,并绑定到sale_item表的定单日期列,使得该列默以为系统当前日期。

createdefaultxq_rule

execsp_bindefault'xq_rule',''

altertablesale_item

addorder_datedatetimedefaultgetdate()

二、选做题(必需从当选1道题目)

7、利用存储进程计算出定单编号为10003的定单的销售金额。

createprocp1

as

selectsum(qty*unit_price)

fromsales_item

whereorder_no=’10003’

8、编写触发器,若是修改sale_item表中的销售数量或单价字段,级联修改sales表中该定单编号的定单金额字段。

第二套

一、必做题

1.查找出职称为领导的女员工的姓名、职称、性别。

selectemp_name,title,sexfromemployeewheretitle='领导'andsex='女'

2.找出公司女业务员所接的定单。

(要求用嵌套查询)

selectorder_no

fromsales,employee

wheresexin

selectsex

fromemployee

wheresex='f')

 

3.计算每一产品销售数量总和与平均销售单价。

selectcount(qty)

fromsale_item

selectprod_idfromsale_itemgroupbyprod_id;

selectavg(unit_price)

fromsale_item

selectprod_id,sum(qty)as销售数量总和,avg(unit_price)as平均销售单价

fromsale_itemgroupbyprod_id

4.设置sales表和sale_item的外键关系为“层叠”。

删除sales表中作废的定单(其发票号码为I000000004),其定货明细数据也一并删除。

altertablesales

addconstraintFK_salesforeignkey(order_no)referencessale_item(order_no)

deletefromsaleswhereinvoice_no='I000000004'

5.通过大体表employee和sales,创建一个视图V1,包括业务员的编号、姓名、定单号、销售总金额。

createviewV1

as

selectemp_no,emp_name,sum(unit_price)as销售总金额

fromemployee,sales,sale_item

where=and=

groupbyemp_no

createviewv1

as

selectsale_id,order_no,tot_amt

fromsales

 

6.创建一个默许约束,使得sale_item表的定单日期默以为系统当前日期。

altertablesale_item

addconstraintdatetimedefaultGETDATE()fororder_date

二、选做题(必需从当选1道题目)

7.利用存储进程计算出’E0014’业务员的销售总金额。

createprocp1

as

selectsum(qty*unit_price)

fromsales,sales_item

wheresale_id='E0014'

8.编写触发器,若是修改sale_item表中的销售数量或单价字段,级联修改sales表中该定单编号的定单金额字段。

第三套

1、选取销售数量最多的前条定单定单号、数量。

selecttop5order_no,qtyfromsale_item

orderbyqtydesc

2、计算出一共销售了几种产品。

selectcount(*)fromproduct

3、查询姓名为’a14’的员工谈成定定单金额。

(用嵌套查询)

selecttot_amtfromsaleswheresale_idin

(selectsale_idfromsales,employeewhereemp_name='a14'andemp_no=sale_id)

4、将每一个员工的薪水上调3%。

updateemployee

setsalary=1+1*

5、通过大体表sales_item,product和sales,创建一个视图V1,包括定单号,产品号,产品名称,总价钱,定单日期。

createviewv1(定单号,产品号,产品名称,总价钱,定单日期)

as

selectorder_no,prod_id,prod_name,qty*unit_price,order_date

fromsale_item,product,sales

where=and=

6、创建一个默许,并绑定到sale_item表的定单日期列,使得该列默以为系统当前日期。

createdefaultxq_rule

execsp_bindefault'xq_rule',''

altertablesale_item

addorder_datedatetimedefaultgetdate()

二、选做题(必需从当选1道题目)

7、利用存储进程查找“刘刚”的员工编号、定单编号、销售金额。

createprocp1

as

selectemp_no,order_no,qty*unit_pricefromemployee,sale_item

whereemp_name='刘刚'

execp1

8、创建AFTER-UPDATE触发器,在product表上创建触发器updproduct_trg,当对表product的记录进行修改时,触发器将给出修改时刻信息。

第四套

一、必做题

一、在表sales中挑出销售金额大于等于1万元定单。

]

selecttot_am

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

当前位置:首页 > 初中教育 > 初中作文

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

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