数据库实验2_实验2数据库
数据库实验2由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“实验2数据库”。
山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库系统概论 同组者: 实验日期: 2018.04.24
实验二 数据查询
一.实验目的1.理解数据库中数据的其他查询方法和应用; 2.学会各种查询要求的实现;
3.学会各种查询的异同及相互之间的转换方法。
二.实验内容
1.实验代码
--1.查询供应商号码为S1的供应商的名称SNAME,所在城市CITY
Select SNAME,CITY FROM S WHERE SNO='S1';
--2.查询颜色为红色的零件号码 select pno from p where color='红';
--3.查询工程所在地为天津的工程名称JNAME select jname from j where city='天津';
--4.查询供应商号和名称,分别用小写字母和大写字母表示供应商代码 select upper(sno)大写,lower(sno)小写, sname from s;
--5.查询零件的详细信息,用结果属性名用中文显示
select pno 零件代码,pname 零件名,color 颜色, weight 重量 from p;
--6.查询供应工程J1零件P1的供应商号SNO select sno from spj where jno='j1' and pno='p1';
--7.查询供应商的名称和所在城市,并按照所在城市升序排序,同一个城市的按照供应商的名称降序排序
select sname,city from s order by city ASC,sname DESC;山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库系统概论 同组者: 实验日期: 2018.04.24--8.查询使用供应商S1所供应零件的工程号码 select jno from spj where sno='s1';
--9.查询各种零件的平均重量 select AVG(weight)from p;
--修改货物表中的P表的weight的数据类型 alter table p alter column weight float;
--10.查询零件的总个数
select sum(QTY)零件总和 from spj;
--11.from p where pname like '螺%';
--12.查询各个供应商供应的零件P3总数量
select sum(qty)from spj where pno='p3';
--13.供应工程J1红色零件的供应商号SNO
select distinct sno from spj, p where p.pno=spj.pno and(jno='j1' and color='红');
--14.工程项目J2使用的各种零件的名称及数量
select distinct pname,qty from p, spj where p.pno=spj.pno and jno='j2';
--15.使用上海产的零件的工程的名称
select distinct jname from s, j, spj where s.city='上海' and(s.sno=spj.sno and j.jno=spj.jno);查询所有以“螺”字开头的零件的零件号、零件名和颜色
select pno,pname,color 山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库系统概论 同组者: 实验日期: 2018.04.24--16.所有项目的使用零件的情况(无论有没有使用零件),包括项目代码、项目名称、零件代码和零件数量
select distinct spj.jno, j.jname, pno, qty from spj, j where spj.jno=j.jno;
--17.供应商S1和S3供应的相同的零件编号
select pno from spj where sno='s1' intersect select pno from spj where sno='s3';
--18.没有使用天津产的零件的工程号码
select distinct jno from spj where sno in((select sno from s where city!= '天津'));--19.没有使用天津供应商生产的红色零件的工程号
select distinct jno from spj where jno not in(select jno from spj,s,p where(s.city='天津' and p.color='红')and(s.sno=spj.sno and p.pno=spj.pno));
--20.至少用了供应商S1所供应的全部零件的工程号Jno
select jno from spj where pno='p1' and jno in(select jno
--21.基于学生选课数据库,验证课本上数据查询相关的示例
select *
from spj where pno='p2');山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库系统概论 同组者: 实验日期: 2018.04.24 from student;
select sname,'Year of Birth:',2014-sage,lower(sdept)from student;
--查询至少选修了学生201215122选修的全部课程的学生号码--不存在这样的课程y,学生201215122选修了y,而学生x没有选 select distinct sno from sc scx where not exists
(select *
select distinct sno from sc scx where not exists
(select scy.cno
--查询选修了课程名为“信息系统”的学生学号和姓名 select sno,sname from student where sno in(select sno
from sc where cno in(select cno
from course
where cname='信息系统'));
from sc scy
where scy.sno='201215122' and scy.cno not in(select scz.cno from sc scz
where scz.sno=scx.sno));
from sc scy
where scy.sno='201215122' and not exists(select *
from sc scz where scz.sno=scx.sno and scz.cno=scy.cno));山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库系统概论 同组者: 实验日期: 2018.04.24
运行结果1、2、3、4、5、6、7、8、9、10、11、12、13、14、15、16、山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库系统概论 同组者: 实验日期: 2018.04.2417、18、21、19、20、1、2、三. 实验总结
3、通过本次实验,我了解了理解数据库中数据的其他查询方法和应用,学会各种查询要求的实现,学会各种查询的异同及相互之间的转换方法。在实验过山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库系统概论 同组者: 实验日期: 2018.04.24 程中,有的看不懂题意,通过询问同学解决了,也有的不会做,答案也看不懂,最后询问老师,然后自己认真看看,最后解决问题了。