数据库SQL查询例题及解答

上传人:ali****an 文档编号:118767147 上传时间:2019-12-25 格式:DOC 页数:14 大小:1.25MB
返回 下载 相关 举报
数据库SQL查询例题及解答_第1页
第1页 / 共14页
数据库SQL查询例题及解答_第2页
第2页 / 共14页
数据库SQL查询例题及解答_第3页
第3页 / 共14页
数据库SQL查询例题及解答_第4页
第4页 / 共14页
数据库SQL查询例题及解答_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《数据库SQL查询例题及解答》由会员分享,可在线阅读,更多相关《数据库SQL查询例题及解答(14页珍藏版)》请在金锄头文库上搜索。

1、1 实验目的 1 熟悉数据库的交互式SQL工具。 2 熟悉通过SQL对数据库进行操作。 3 完成作业的上机练习。2 实验工具sql server利用Sql server及其交互式查询工具-查询分析器来熟悉SQL。3 实验内容和要求1)实验内容:创建数据库boat,包括Sailors,Boats,Reserves三个表,表结构如下:Sailors(sid: integer, sname: string, rating: integer, age: real)船员(船员编号,姓名,级别,年龄)Boats(bid: integer, bname: string, color: string)船(船编

2、号,名称,颜色)Reserves(sid: integer, bid: integer, day: date)租赁(船员编号,船编号,日期)(注:下划线表示主键),并插入一定数据。2)完成下列要求:(1)查询所有船员的信息(2)查询所有姓王的船员的信息(3)查询租用过103号船的船员姓名(4)查找租用过船只的船员编号(5)查找rating7且年龄25的水手编号(6)查找租用过红船和绿船的水手名字(7)查找租用过红船或绿船的水手编号(8)查找最年长的水手的年龄和名字(9)在18岁以上水手中,对于每个rating级别中最少有两个水手以上的组中最年轻水手的年龄(10)查找每条红色船只被租用的次数(1

3、1)把30岁以上船员的级别调高一级(12)删除所有年龄超过40岁的船员信息(13)建立年龄超过25岁的船员的视图(14)对(13)建立的视图,举一操作的例子(查询、删除、修改均可)2)要求:a 建立boat数据库的SQL脚本,插入所有数据项的SQL脚本(包括所有的测试数据)。b 记录完成查询要求的SQL语句脚本。c 记录完成查询的查询结果。数据库系统概论实验报告题 目:交互式SQL 学 号: 日期:2012年4月29日实验内容与完成情况:(一) 实验所用数据(截图):Sailors表Boats表Reserves表(二)实验内容和要求1)实验内容:创建数据库boat,包括Sailors,Boat

4、s,Reserves三个表,表结构如下:Sailors(sid: integer, sname: string, rating: integer, age: real)船员(船员编号,姓名,级别,年龄)Boats(bid: integer, bname: string, color: string)船(船编号,名称,颜色)Reserves(sid: integer, bid: integer, day: date)租赁(船员编号,船编号,日期)(注:下划线表示主键),并插入一定数据。2)完成下列要求:(1)查询所有船员的信息。1.正确结果:2.实现语句:select * from Sailor

5、s3.执行结果:4.正确,无问题(2)查询所有姓李的船员的信息1.正确结果:sidsnameratingage2李世民2204李刚42513李刚5272.实现语句:select *from Sailorswhere sname like 李%3执行结果:4.正确,无问题(3)查询租用过6号船的船员姓名1.正确结果:sname曹操勾践2.实现语句:select distinct snamefrom Sailors,Reserveswhere Sailors.sid=Reserves.sid and bid=63执行结果4.正确,无问题(4)查找租用过船只的船员编号1.正确结果:sid123456

6、7891011121314151617182.实现语句:select distinct sidfrom Reserves3执行结果4.正确,无问题(5)查找rating7且年龄25的水手编号1.正确结果:sid72.实现语句:select sidfrom Sailorswhere rating7 and age253执行结果:4.正确,无问题(6)查找租用过红船和白船的水手名字1.正确结果:sname张飞2.实现语句:select sidfrom Sailorswhere Sailors.sid=Reserves.sid and Boats.bid=Reserves.bid and color

7、=红intersectselect sidfrom Sailorswhere Sailors.sid=Reserves.sid and Boats.bid=Reserves.bid and color=白3执行结果4.无法执行,改变实现语句 【2实现语句:select snamefrom Sailors,Reserves,Boatswhere Sailors.sid=Reserves.sid and Boats.bid=Reserves.bid and color=红 And sname in(select snamefrom Sailors,Reserves,Boatswhere Sailo

8、rs.sid=Reserves.sid and Boats.bid=Reserves.bid and color=白) 3.执行结果: 4.正确。】(7)查找租用过红船或绿船的水手编号1.正确结果:sid1368101716142.实现语句:select distinct sidfrom boats,Reserveswhere boats.bid=Reserves.bid and color=绿or color=红3,执行结果4.执行错误,改变实现语句:【2.实现语句:select distinct sidfrom boats,Reserveswhere boats.bid=Reserves.

9、bid and ( color=绿or color=红);3.执行结果:4.正确。】(8)查找最年长的水手的年龄和名字1.正确结果:SnameAge马克思412.实现语句:select sname,agefrom sailorswhere age=all(select age from sailors)3执行结果4.正确,无问题(9)在18岁以上水手中,对于每个rating级别中最少有两个水手以上的组中最年轻水手的年龄1.正确结果:RatingAge2203234255276317372.实现语句:select rating,agefrom sailors xwhere age=(select

10、 min(age) from sailors y where age20 and y.rating=x.rating group by rating having count(sid)1)3执行结果4.正确,无问题。(10)查找每条红色船只被租用的次数1.正确结果:bidcount12812.实现语句:select boats.bid,count(sid)from Reserves,boatswhere boats.bid=Reserves.bid and color=红group by boats.bid3执行结果4.注意bid前面需要加boats以加以明确。(11)把30岁以上船员的级别调

11、高一级1.正确结果:2.实现语句:update sailorsset rating=rating+1where age30 select * from sailors3执行结果:(12)删除所有年龄超过40岁的船员信息1.正确结果: 2.实现语句:deletefrom sailorswhere age40deletefrom Reserveswhere sid in(select sid from sailors where age40)select * from sailors select * from Reserves3执行结果: 4.正确,无问题。(13)建立年龄超过25岁的船员的视图

12、1.实现语句:create view is_sailorsasselect sid,sname,rating,agefrom sailorswhere age252.执行结果(14)对(13)建立的视图,举一操作的例子(查询、删除、修改均可)1.实现语句:select *from is_sailorswhere rating52.执行结果:(三)出现的问题1数据写入的时候没有注意导致某些问题无法解决。2.交运算无法执行。3.and与or的运算顺序搞错。4.出现指代不明的情况。(四)解决的问题1.修改数据2.查阅电脑,问题为:3.如果想先算or带括号,如题(7)。4.带上其所属的表,如有连接的话,select后面应该加sailors.bid而不是只有bid。(五)未解决的问题1.修改一旦执行就不能返回了么?2.另:由于数据输入的原因,为使结果更据代表性,某些题目可能做了修改,但不改变题目考察意图。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号