实验三 高级查询
1 实验目的
(1) 掌握SQL的高级查询的使用方法,如分组统计、嵌套查询、集合查询等等。
2 实验内容
2.1 掌握SQL高级查询使用方法
(1) 分组统计。
(2) 嵌套查询,包括IN查询、EXISTS查询。 (3) 集合查询。
3 实验要求
(1) 深入复习教材第三章SQL有关高级查询语句。
(2) 根据书上的例子,针对TPCH数据库模式设计分组统计查询、嵌套查询(IN、EXISTS)语
句和集合查询语句,每种类型的基本查询至少要设计一个查询,描述清楚查询要求,运行你所设计的查询语句,并截图相应的实验结果,每幅截图并要有较为详细的描述。也可以按照附2所列示例查询做实验。
(3) 实验步骤和实验总结中要详细描述实验过程中出现的问题、原因和解决方法。
4 实验步骤
4.1 掌握SQL高级查询使用方法
(1)
(2)
(3)
(4)
(5)
不带分组过滤条件的分组统计查询。
带分组过滤条件的分组统计查询。
IN嵌套查询。
单层EXISTS嵌套查询。
双层EXISTS嵌套查询。
(6) 集合查询(交、并、差各设计一个)。
(7) FROM 子句中的嵌套查询
5 总结与体会
5.1 实验中出现的问题及其解决方案 5.2 总结 5.3 体会
附1:高级SQL查询
(1) 不带分组过滤条件的分组统计查询。 统计每个顾客订购金额。
(2) 带分组过滤条件的分组统计查询。
查询平均每个订单金额超过1000元的顾客编号及其姓名。
(3) IN嵌套查询。
查询订购了“海大”制造的“船舶模拟驾驶舱”的顾客。
(4) 单层EXISTS嵌套查询。
查询没有购买过“海大”制造的“船舶模拟驾驶舱”的顾客。
(5) 双层EXISTS嵌套查询。
查询至少购买过顾客“张三”购买过的全部零件的顾客姓名。
(6) 集合查询(交、并、差各设计一个)。
查询顾客“张三”和“李四”都订购过的全部零件的信息。 查询顾客“张三”和“李四”订购的全部零件的信息。 顾客“张三”订购过,而“李四”没订购过的零件的信息。
(7) FROM 子句中的嵌套查询
查询平均每个订单金额超过1万元的顾客中属于中国的顾客信息。