多表查询.docx
- 文档编号:9016282
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:8
- 大小:73.68KB
多表查询.docx
《多表查询.docx》由会员分享,可在线阅读,更多相关《多表查询.docx(8页珍藏版)》请在冰点文库上搜索。
多表查询
《数据库系统原理》实验报告
实验名称:
多表查询
学院:
计算机学院
班级:
2011级计算机科学与技术2班
学号:
201124131242
姓名:
实验日期:
2013年5月01日
一、实验准备
为了使实验顺利进行。
需要有一台计算机,计算机安装了win7操作系统,还安装了MicrosoftSQLServer2005开发版,实验开始之前,必须将本章实验四中创建好ShiYan数据库附加到当前SQL数据库服务器中。
二、实验目的
1.了解查询的概念和方法。
2.掌握查询分析器的使用方法。
3.掌握复杂查询的实现方法。
4.掌握多表连接的方法。
5.掌握嵌套查询与集合查询的基本方法
6.掌握select语句在多表查询中的应用。
三、实验内容
针对实验数据库ShiYan,完成以下多表查询操作:
1.查询为工程J1供应红色零件的供应商号码SNO。
在查询分析器中输入如下SQL脚本:
selectspj.SNO,COLOR,JNO
fromp,spj
whereCOLOR='红'andp.PNO=spj.PNOandJNO='J1'
执行以上脚本程序,显示结果为:
2.查询没有使用天津供应商生产的零件并且当前工程所使用零件的颜色全部为红色的工程号JNO。
在查询分析器中输入如下SQL脚本:
selectJNO
fromspj
whereJNOnotin(selectJNO
froms,spj
wheres.SNO=spj.SNOandCITY='天津')andPNO=(selectPNO
fromp
whereCOLOR='红'andPNO=spj.PNO)
执行以上脚本程序,显示结果为:
3.查询至少选用了供应商S1所供应的全部零件的工程号JNO。
在查询分析器中输入如下SQL脚本:
selectJNO
fromspj
wherePNOin(selectPNO
fromspj
wherePNO='S1')
groupbyJNO
havingcount(*)=(selectcount(*)
fromspj
whereSNO='S1'
groupbySNO)
执行以上脚本程序,显示结果为:
4.找出工程J2使用的各种零件的名称及其重量。
在查询分析器中输入如下SQL脚本:
selectPNAME,WEIGHT
fromp,spj
whereJNO='J2'andp.PNO=spj.PNO
执行以上脚本程序,显示结果为:
5.找出上海厂商供应的所有零件号码。
在查询分析器中输入如下SQL脚本:
selectPNO
fromspj,s
wheres.CITY='上海'ands.SNO=spj.SNO
groupbyPNO
执行以上脚本程序,显示结果为:
6.找出使用上海产的零件的工程名称。
在查询分析器中输入如下SQL脚本:
selectJNAME
froms,spj,j
wheres.CITY='上海'ands.SNO=spj.SNOandj.JNO=spj.JNO
groupbyJNAME
执行以上脚本程序,显示结果为:
7.找出没有使用天津产的零件的工程号码。
在查询分析器中输入如下SQL脚本:
selectJNO
fromspj
whereSNOin(selectSNO
froms
whereCITY!
='天津')
执行以上脚本程序,显示结果为:
8.找出重量最轻的红色零件的零件编号PNO
在查询分析器中输入如下SQL脚本:
selecttop1PNO
fromp
whereCOLOR='红'
orderbyWEIGHT
执行以上脚本程序,显示结果为:
9.找出供应商与工程所在城市相同的供应商提供的零件号码
在查询分析器中输入如下SQL脚本:
selectPNO
fromspj,s,j
wheres.CITY=j.CITYands.SNO=spj.SNOandj.JNO=spj.JNO
groupbyPNO
执行以上脚本程序,显示结果为:
10.找出所有这样一些
在查询分析器中输入如下SQL脚本:
selects.CITY,j.CITY,p.PNAME
froms,p,j,spj
wheres.SNO=spj.SNOandp.PNO=spj.PNOandj.JNO=spj.JNO
groupbys.CITY,j.CITY,p.PNAME
执行以上脚本程序,显示结果为:
11.重复第10题,但不检索两个CITY值相同的三元组
在查询分析器中输入如下SQL脚本:
selects.CITY,j.CITY,p.PNAME
froms,p,j,spj
wheres.SNO=spj.SNOandp.PNO=spj.PNOandj.JNO=spj.JNOands.CITY!
=j.CITY
执行以上脚本程序,显示结果为:
12.找出供应商S1为工程名中含有“厂”字的工程供应的零件数量总和
在查询分析器中输入如下SQL脚本:
selectsum(QTY)'零件数量总和'
fromspj,j
whereSNO='S1'andspj.JNO=j.JNOandspj.JNOin(selectJNO
fromj
whereJNAMElike'%厂%')
执行以上脚本程序,显示结果为
四.总结
通过本次实验,我了解了查询的多表连接,主要表现为连接查询,嵌套查询,集合查询等几种形式,以及各查询语句的使用。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 查询
![提示](https://static.bingdoc.com/images/bang_tan.gif)