实验2-基本数据查询.doc
Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-date实验2-基本数据查询信息论与编码实验指导书实验二 基本数据查询一、实验目的1. 熟悉大型数据库实验环境,以MS SQL SERVER为例。2. 掌握MS SQL SERVER的查询分析器的用法。3. 能够完成对单表的查询操作。4. 能够完成对多表的联合查询操作。5. 能够完成带数据聚合函数的查询。二、实验内容(1)以实验一中创建的数据库abc作为查询对象,完成如下查询要求:1. 查询2001年12月31日之后的销售情况,要求列出销售人员姓名、销售的产品名以及销售日期。2. 查询销售电冰箱的销售人员的最大年龄。3. 统计每个产品的销售总数量,要求只列出销售数量前3名的产品号和销售总数量。4. 查询销售人员的销售情况,包括有销售记录的销售人员和没有销售记录的销售人员,要求列出销售人员姓名、销售的产品号、销售数量和销售日期。5. 列出2000年1月1日以后销售总量第一的产品的名称和生产厂家。select r.XM '姓名',c.CPM '产品名',q.XSRQ '销售日期' from CPB c,XSQKB q,XSRYB rwhere c.CPH=q.CPH and q.ZGH=r.ZGH and q.XSRQ>'2001-12-31'select max(r.NL) '年龄'from CPB c,XSQKB q,XSRYB rwhere c.CPH=q.CPH and q.ZGH=r.ZGH and c.CPM='电冰箱'select top 3 CPH,sum(XSSL) as 销售总数量 from XSQKBgroup by CPHorder by 销售总数量 descselect r.XM '姓名',q.CPH '产品号',q.XSSL '销售数量',q.XSRQ '销售日期' from XSRYB r left outer join XSQKB q on (q.ZGH=r.ZGH)select top 1 c.CPM '产品名',c.SCCJ '生产厂家'from CPB c,XSQKB q,XSRYB rwhere c.CPH=q.CPH and q.ZGH=r.ZGH and q.XSRQ>'2000-01-01'group by c.CPM,c.SCCJorder by sum(q.XSSL) desc(2)以MS SQL SERVER的例子数据库pubs为查询对象,完成如下查询:6. Pubs数据库:没有写过business或者popular_comp类型书籍的作者编号和姓名7. Pubs数据库:查询出版物价格在20元以上的作者编号和姓名8. Pub数据库:版税大于80%且state=ks的作者信息9. Pub数据库:查询作者数量小于5的州10. Pub数据库:查询价格最高的书的作者,和他写的所有书的名称11. Pub数据库:查询销量较少的10本书的作者编写的所有书的书名12. Pubs数据库:查询写了价格PRICE高于平均价的书,而且所在的州STATE=CA的作者名称,图书名称,价格。注意:如果数据库服务器中的pubs例子数据库被破坏,请用SQL Server 2000 Sample Databases.rar中的instpubs.sql还原select a.au_id,a.au_fname,a.au_lnamefrom authors a inner join titleauthor ta on (a.au_id=ta.au_id) inner join titles t on (t.title_id=ta.title_id)where type not in ('business','popular_comp')select a.au_id,a.au_fname,a.au_lnamefrom authors a inner join titleauthor ta on (a.au_id=ta.au_id) inner join titles t on (t.title_id=ta.title_id)where t.price>20select *from authors awhere a.au_id in(select a.au_id from authors a inner join titleauthor ta on (a.au_id=ta.au_id) inner join titles t on (t.title_id=ta.title_id) where royaltyper>80 and state='KS')select statefrom authorsgroup by statehaving count(*)<5select t.title,a.au_id,a.au_fname,a.au_lnamefrom authors a inner join titleauthor ta on (a.au_id=ta.au_id) inner join titles t on (t.title_id=ta.title_id)where a.au_id =(select top 1 a.au_idfrom authors a inner join titleauthor ta on (a.au_id=ta.au_id) inner join titles t on (t.title_id=ta.title_id)order by t.price desc)select a.au_fname,a.au_lname,t.title,t.pricefrom authors a inner join titleauthor ta on (a.au_id=ta.au_id) inner join titles t on (t.title_id=ta.title_id)where a.state='CA' and t.price> (select avg(price) from titles)三、实验要求1. 提前预习实验,认真阅读实验原理以及相应的参考书。2. 要求在上机的课时内做完。3. 实验中服从实验室管理人员以及实验指导老师的管理。4. 认真撰写实验报告,内容可以自己编排。四、实验报告要求1. 提交内容:实验报告;2. 提交要求:实验结束后,当周的星期五晚上20:00前,由班长收电子稿(不要求交打印稿),班长将电子稿发到zff,不按时交的一概算没有交;3. 电子稿命名规则:不符合命名规则的一概算没有交, 实验报告命名规则:智能120X-学号-姓名-实验1-实验报告.doc-