标签:查询 DISTINCT 数据库 子句 员工 分组 表中 实验报告
实验名称: 单表查询 |
|
一、实验预习报告 1、实验相关知识的简述: |
(1)指定列或全部列查询(Select)
- 查询指定列:在SELECT子句的<目标列表达式>中指定要查询的属性列;
- 查询全部列:在SELECT子句的<目标列表达式>中列出所有列名,或者将<目标列表达式>指定为* ;
- 查询经过计算的值:SELECT子句的<目标列表达式>不仅可以是表中的属性列,也可以是表达式(算术表达式、字符串常量、函数等)。
SELECT <目标列表达式> FROM <表名或视图名> |
(2)按条件查询(Where)
WHERE字句常用的查询条件 | 查询条件 | 谓词 | 比较 | = , > , < , >= , <= , (<> , !=不等于) | 确定范围 | BETWEEN AND, NOT BETWEEN AND | 确定集合 | IN, NOT IN | 字符匹配 | LIKE NOT LIKE 通配符 % ,_ | 多重运算(逻辑运算) | 与AND, 或OR, 非NOT | 空值 | IS NULL, IS NOT NULL |
- 查询满足条件的元组:可通过WHERE字句实现。WHERE子句常用的常用的查询条件如上表所示。
(3)分组统计查询
- GROUP BY子句将查询结果按某一列或多列的值分组,值相等的为一组。(如未对查询结构分组,聚类函数将作用于整个查询结果,分组后聚集函数将作用于每一个组,即每一组都有一个函数值。)
- 使用HAVING短语指定筛选条件,对分组按照一定的条件进行筛选,最终只输出满足指定条件的组。(WHERE子句中是不能用聚类函数作为条件表达式的。)
SQL提供的聚集函数主要有: | COUNT ( * ) | 统计元组个数 | COUNT ( [ DISTINCT | ALL ] <列名> ) | 统计一列中值的个数 | SUM ( [ DISTINCT | ALL ] <列名> ) | 计算一列值的总和(此列必须是数值型) | AVG ( [ DISTINCT | ALL ] <列名> ) | 计算一列值的平均值(此列必须是数值型) | MAX ( [ DISTINCT | ALL ] <列名> ) | 求一列值中的最大值 | MIN ( [ DISTINCT | ALL ] <列名> ) | 求一列值的最小值 |
(4)对查询结果排序
- 用ORDER BY子句对查询结果按照一个或者多个属性列的升序(ASC)或降序(DESC)排列,默认升序。
|
3、实验内容: |
(1)指定列或全部列查询(Select) ①查询商品表(Product)中所有商品的信息; ②检索客户表(Customer)中前5位客户的公司名称、联系人姓名和地址; ③从员工表(Employee)中查询所有员工的部门信息; ④查询将员工表中(Employee)所有员工的工资提高10%后的信息,输出字段为:员工姓名,原工资,提高后工资; ⑤统计员工表(Employee)中的职工数。 (2)按条件查询(Where) ①检索员工表所有姓李和姓章的员工信息; ②检索员工表姓李的名字只有一个汉字的员工信息; ③查询员工表中工资在3400以下的女性员工姓名和工资信息; ④查询员工表中工资在5000到7000之间的员工信息;(Between) ⑤检索销售订单表(Sell_Order)中,员工编号为1、5、7的员工接收订单的信息;(IN) ⑥检索部门表(Department)中主管位置不为空的部门信息; (3)分组统计查询 ①查询员工表中男女员工的平均工资。输出字段性别,平均工资。 ②查询销售订单表中各种商品的订货总数,输出字段为商品编号,订货总数。 ③查询销售订单表中,订购两种以上商品的客户编号,订购商品种类。 (4)对查询结果排序 ①查询员工表中男女员工的平均工资。输出字段性别,平均工资,按照平均工资升序排列。 ②查询销售订单表中各种商品的订货总数,输出字段为商品编号,订货总数,按照订货总数降序排列。 |
标签:查询,
DISTINCT,
数据库,
子句,
员工,
分组,
表中,
实验报告
From: https://blog.csdn.net/T3057519360/article/details/140742159