数据库原理应用实验二_第1页
数据库原理应用实验二_第2页
数据库原理应用实验二_第3页
数据库原理应用实验二_第4页
数据库原理应用实验二_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、姓名 学号 班级 2班 年级 电商08级 指导教师 西安财经学院信息学院数据库原理与应用实验报告实验名称基本表SQL语句练习 实验室 407实验室 实验日期 2010-11-22 一、实验目的及要求1加深对表间关系的理解。2理解数据库中数据查询方法和应用,学会各种查询要求的实现。3学会各种查询的异同及相互之间的转换方法4加深对数据库相关性质的理解;5各种约束性理解;学会数据库中数据的更新的方法二、实验环境实验中采用Microsoft公司的SQL Server 2008作为数据库平台。操作系统:Windows XP;数据库管理系统(DBMS):SQL Server 2000三、实验内容1练习基本

2、查询语句的使用,了解条件查询,多重条件的查询,分组查询,部分匹配查询及查询排序.。2熟练使用数据表连接查询中的内连接外连接以及子查询。3练习使用数据库函数,包括计算列、求和、最大、最小值、各类选择条件、字符匹配、分组和排序,体会各种查询的执行过程四、实验步骤1.进入SQL2008企业管理器,打开数据库,右击pubs数据库,打开新建查询;2.然后把源程序代码输入,执行程序。五、调试过程及实验结果1. 查询所有作者的作者号、姓名信息 2.在“作者号”处显示身份证号 3查询在CA州的作者姓名和城市 5查询每个出版社出版的书 4.查询出版日期在2000.1.1-2000.12.31之间的书名和出版日期

3、6查询某店销售某书的数量7查询有销售记录的所有书信息(书号、书名、类型和价格等) 9查询已销售书的信息(书号、书名、作者等)原因分析:之所有会出现title_id不明确是因为在数据库中同时有两个表中含有title_id,系统不知道用户要查的是哪一个.只要在查询语句第一行加入从那个表中查询就能成功执行。10查询所有出版商业(business)书籍的出版社的名称(二)1查询书名以T开头或者出版社号为0877,而且价格大于16的书的信息。2按照类型的升序和价格的降序(类型相同时)显示书信息(书名作者出版社类型价格)3查询销售量大于30的书名及销售数量4查询在1990.1.1到2000.12.31间,

4、每本书的销售总额分析:开始时没有分组,只出现一个结果,用group by 分组后正常、5查询所有作者的所在城市和州名(没有重复信息) 6, 计算多少种书已被订价 7查询每本书的书名、作者及它的售书总量 8计算所有书的平均价格 9查询价格最高的书的书名、作者及价格(三)1. 参照以上各表给出的主键、外键设置的设置要求,在自己创建表中进行相应的设置。2. 向authors表中插入一行作者信息(具体值自定)3. 数量超过100的商店增加10%的折扣4. 删除1994.9.14的订单分析:在日期那儿应该加“引号”则会出现影响的行数为六行。5建立CA州作者所著书的视图(包括作者号、姓名、所在州、书名、价

5、格、出版日期)5. 建立付款方式是现金(cash)的订单视图6. 建立CA州的所有商店的视图六、总结(可选)在此次的实验操作中,细节处的错误还是没有避免。比如说日期要用引号引起来。对于在多个表中都有的属性查询时要注明表的名称。总而言之,通过此次实验熟悉了对SQL的查询操作,但对一些复杂的查询操作仍十分生疏,在以后的学习中会进一步强化。七、源程序清单 (可选)1查询所有作者的作者号、姓名信息select au_id,au_lname,au_fnameFrom authors2.查询所有作者的姓名、作者号信息,并在每个作者的作者号前面显示字符串“身份证号:”,表明显示的信息是身份证信息Select

6、 au_id as 身份证号,au_lname,au_fnameFrom authors3查询在CA州的作者姓名和城市 select au_lname,au_fname, cityfrom authorsWHERE city='CA'4.查询出版日期在2000.1.1-2000.12.31之间的书名和出版日期 select title, pubdatefrom titlesWHERE pubdate between 2000-1-1 and 2000-12-31'方法二select title, pubdatefrom titleswhere(pubdate>=2

7、000-1-1)AND(pubdate<=2000-12-31)5查询每个出版社出版的书Select pub_name, titleFrom titles, publishersWhere (publishers. pub_id=titles. pub_id) 方法二Select pub_name, titleFrom titles inner join publishersOn publishers. pub_id=titles. pub_id6.查询某店销售某书的数量(此查询涉及三个表多表查询)Select stor_name, title ,qtyFrom sales,stores

8、,titlesWhere titles.title_id= sales. title_id and sales.stor_id=stores.stor_id7.查询有销售记录的所有书信息(书号、书名、类型和价格等)Select title,type,title_id,priceFrom titlesWhere Ytd_sales is not null8.显示所有的书名(无销售记录的书也包括在内)(外连接)Select titleFrom titlesLeft outer join9.查询已销售书的信息(书号、书名、作者等)(Select title, title_id, au_lname,a

9、u_fnameFrom titles,authors,titleauthorWhere(Ytd_sales is not null)and (authors.au_id=titleauthor.au_id)and(titles.title_id=titleauthor.title_id10.查询所有出版商业(business)书籍的出版社名称select pub_namefrom Publisherswhere (pub_id=any( select pub_id from Titles where type='business')(二)1查询书名以T开头或者出版社号为0877

10、,而且价格大于16的书的信息。Select *From titlesWhere (title like T%) or (title_id=0877)and price>162按照类型的升序和价格的降序(在类型相同时)显示书的信息(书名、作者、出版社、类型、价格)Select title, au_lname,au_fname, pub_name, type,priceFrom titles,publishers,authorsWhere (publishers. pub_id=titles. pub_id) and (titleauthor.au_id= authors.au_id)and

11、(titles.title_id=titleauthor.title_id)Order by type,price desc3查询销售量大于30的书名及销售数量Select title,qtyFrom titles.salesWhere (qty>30) and (titles.titles_id=sales.titles)4查询在1990.1.1到2000.12.31间,每本书的销售总额Select titles.title_id,sum(Ytd_sales)as totalsalesfrom titles,salesWHERE (ord_date between '1990-

12、1-1' and '2000-12-31')and (titles.title_id=sales.title_id)group by titles.title_id5查询所有作者的所在城市和州名,要求没有重复信息Select distinct au_id, city,stateFrom authors6计算多少种书已被订价Select count(price)From titles7查询每本书的书名、作者及它的售书总量Select title, au_lname,au_fname,Ytd_sales From titles,authors,titleauthor Whe

13、re (authors.au_id=titleauthor.au_id)and(titles.title_id=titleauthor.title_id)8计算所有书的平均价格Select avg (price) as avepriceFrom titles9查询价格最高的书的书名、作者及价格Select title, au_lname,au_fname,priceFrom titlesWhere price=max(price) (三)1向authors表中插入一行作者信息(具体值自定)Insert into authors(au_id,au_lname,au_fname,phone,add

14、ress,city,state,zip,contract)Values(007,'lili','yan',88688,'shanxi','xian','changan',710100,1)3数量超过100的商店增加10%的折扣Update discountsSet discount=1.1*discountWhere highqty>1004删除1994.9.14的订单Delete from salesWhere ord_date=1994-9-145删除1中所建立的索引Drop index authors.au16建立CA州作者所著书的视图(包括作者号、姓名、所在州、书名、价格、出版日期)Create view CA_authorsAs select au_id,au_fname,au_lname,state,title,price,pubdateFrom authors,titlesWhere (authors.au_id=titleauthor.au_id)and(titles.title_id=titleauthor.title_id)7建立付款方式是现金(ca

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论