【实验名称】 实验4 数据库的嵌套查询和集合查询
【实验目的】
1. 理解并掌握子查询的概念和作用;
2. 掌握DBMS 实现嵌套查询的基本方法和应用;
3. 掌握DBMS 实现集合查询的基本方法和应用;
4. 学习、掌握并熟练运用使用嵌套查询与集合查询实现数据查询的各种方法。
【实验内容】
针对供应管理数据库SPJ,使用嵌套查询和集合查询完成以下问题:
- 查询使用了“S001”供应商供应的零件的工程项目信息;
- 查询供应零件“螺丝刀”的供应商信息;
- 查询供应商“北京新天地”的所有客户(工程项目)的信息;
- 查询供应了“J003”工程“P001”零件的供应商信息;
- 查询使用了“天津”供应商供应的“红色”零件的工程项目信息;
- 查询没有使用“天津”供应商供应的“红色”零件的工程项目信息;
- 查询使用了“S001”供应的“螺母”零件的工程信息;
- 查询使用了“螺母”零件的工程信息及相应供应商信息;
- 查询给“长春一汽”项目供应零件的供应商信息和供应情况;
- 查询给“北京三建”项目供应“螺丝刀”零件最多的供应商信息和供应情况;
- 查询使用了“螺母”或“螺丝刀”零件的工程项目信息;
- 查询既使用了“螺母”又使用了“螺丝刀”零件的工程项目信息;
- 查询使用了“螺母”零件但没有使用“螺丝刀”零件的工程项目信息;
- 查询使用过所有供应了零件的供应商都供应了零件的工程项目信息。
【小结或讨论】
本次实验主要使用了嵌套查询,难度提升很大,但是万变不离其宗,只要掌握每个基本查询语句的用法,组合得当就可以查出想要的数据。完成实验任务,同时弄懂客户需求也是非常重要的,理解题意,才能找出正确的答案,嵌套查询是一种SQL语句中包含的SQL查询语句,常用于在一个查询中嵌套另一个查询,以实现更复杂的查询需求。嵌套查询也称为子查询,是查询语句中的一个子集,由一个 SELECT 语句嵌套在另一个 SELECT、INSERT、UPDATE 或 DELETE 语句中。嵌套查询的结果作为外层查询的一部分,由外层查询使用。对于EXITS语句,如果运用得当可以产生事半功倍的效果。