实验 2 数据查询
一、实验目的
1.理解数据库中数据的其他查询方法和应用;
2.学会各种查询要求的实现;
3.学会各种查询的异同及相互之间的转换方法。
二、实验内容
在实验 1 的基础上,练习其它查询语句的使用,包括计算列、求和、最大、最小值、各类选择条件、字符匹配、分组和排序,连接查询、嵌套查询及 EXISTS 查询等,体会各种查询的异同及相互之间的转换,体会各种查询的执行过程,为简单综合应用打下良好的基础。
- 查询供应商号码为 S1 的供应商的名称 SNAME,所在城市 CITY
- 查询颜色为红色的零件号码
- 查询工程所在地为天津的工程名称 JNAME
- 查询供应商号和名称,分别用小写字母和大写字母表示供应商代码
- 查询零件的详细信息,用结果属性名用中文显示。
- 查询供应工程 J1 零件 P1 的供应商号 SNO
- 查询供应商的名称和所在城市,并按照所在城市升序排序,同一个城市的按照供应 商的名称降序排序
- 查询使用供应商 S1 所供应零件的工程号码
- 查询各种零件的平均重量
- 查询零件的总个数
- 查询所有以“螺”字开头的零件的零件号、零件名和颜色
- 查询各个供应商供应的零件 P3 总数量
- 供应工程 J1 红色零件的供应商号 SNO
- 工程项目 J2 使用的各种零件的名称及数量
- 使用上海产的零件的工程的名称
- 所有项目的使用零件的情况(无论有没有使用零件),包括项目代码、项目名称、 零件代码和零件数量
- 供应商 S1 和 S3 供应的相同的零件编号
- 没有使用天津产的零件的工程号码
- 没有使用天津供应商生产的红色零件的工程号
- 至少用了供应商 S1 所供应的全部零件的工程号 Jno
三、实验代码及方法
/*查询供应商号码为 S1 的供应商的名称 SNAME,所在城市 CITY*/ Select Sname,City
From S
Where SNO='S1';
方法:用 where 条件语句按行从 s 表中进行查询,符合就 Select,不符合就跳过查询结果如下
/*查询颜色为红色的零件号码*/ Select PNO
From P
Where Color='红';
/*查询工程所在地为天津的工程名称 JNAME*/ Select Jname
From J
Where City='天津';
/*查询供应商号和名称,分别用小写字母和大写字母表示供应商代码*/ Select SNO,lower(SNO) as sno,SNAME/*划重点*/
From S
方法:在 sql 语言中,不区分大小写,在输出时 Select 用的什么名就输出什么名,Sno 输出 Sno,SNo 输出 SNo,或者特别标明 lower(Sno)自动转化成小写。
查询结果如下
/*查询零件的详细信息,用结果属性名用中文显示。*/
Select Pno as 零件号码,Pname as 零件名,Color as 颜色,Weight as 重量From P
//as 可以省略,直接跟别名
/*