内容正文:
举一反三考点练
《网站数据库应用技术-SQL server》“图书信息管理”数据库表的查询-课后自测
知识点一 聚合函数与分组查询
1.请简述聚合函数 COUNT、SUM、AVG、MIN 和 MAX 的作用及其使用场景。
2.请简述在 SQL 查询中,GROUP BY 子句的作用及其使用方法。
3.请简述在 SQL 查询中,WHERE 子句与聚合函数的结合使用方法。
4.请简述在 SQL 查询中,如何使用聚合函数 COUNT 统计所有行和非空值的数量。
5.(读程序结果题)阅读以下 SQL 查询语句,写出查询结果。
SELECT COUNT(*) AS 总图书数量 FROM 图书信息表;
图书信息表:
ISBN
书名
定价
类别
出版社
入库日期
978-123456
数据库原理
50.00
计算机
高等教育出版社
2024-01-01
978-234567
网络编程
45.00
计算机
电子工业出版社
2024-02-15
978-345678
文学名著
30.00
文学
人民文学出版社
2024-03-20
978-456789
历史研究
60.00
历史
社会科学出版社
2024-04-25
978-567890
医学基础
70.00
医药
科学出版社
2024-05-30
知识点二 排序与子查询
1.请解释在 SQL 查询中,`ORDER BY` 子句的作用及其用法。
2.请解释在 SQL 查询中,子查询的作用及其用法。
3.请举例说明如何在 SQL 查询中使用子查询返回单值。
4.请举例说明如何在 SQL 查询中使用子查询返回多行值。
5.(读程序结果题)以下 SQL 查询语句的执行结果是什么?
SELECT * FROM 图书表 WHERE 定价 > (SELECT AVG(定价) FROM 图书表) ORDER BY 定价 DESC;
图书表:
ISBN
书名
定价
出版社
借出状态
1
计算机基础
15
高等教育出版社
未借出
2
文学名著
35
高等教育出版社
借出
3
历史故事
30
人民出版社
未借出
4
现代文学
40
高等教育出版社
未借出
知识点三 查询结果的保存与管理
1. 请简述如何使用 SELECT INTO 语句将查询结果保存为新表。
2. 请简述在查询设计中如何执行查询并查看结果。
3. 请简述如何通过对象资源管理器删除已添加的表。
4. 请简述在查询设计过程中如何查看自动生成的 SQL 语句。
5.(读程序结果题)阅读以下 SQL 查询语句,写出查询结果:
SELECT * INTO 新表 FROM 原表 WHERE 序号 > 10;
原表数据:
序号
数据
5
A
15
B
20
C
原创精品资源学科网独家享有版权,侵权必究!2
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$
举一反三考点练
《网站数据库应用技术-SQL server》“图书信息管理”数据库表的查询-课后自测
知识点一 聚合函数与分组查询
1.请简述聚合函数 COUNT、SUM、AVG、MIN 和 MAX 的作用及其使用场景。
【答案】COUNT 用于统计满足条件的记录数,常用于统计行数;SUM 用于计算数值列的总和,常用于计算金额、数量等;AVG 用于计算数值列的平均值,常用于计算平均价格、平均成绩等;MIN 和 MAX 分别用于返回一组值中的最小值和最大值,常用于查询最早日期、最低价格等。
2.请简述在 SQL 查询中,GROUP BY 子句的作用及其使用方法。
【答案】GROUP BY 子句用于对查询结果进行分组,通常与聚合函数结合使用。使用方法是在 SELECT 语句中添加 GROUP BY 列名,其中列名是需要分组的列的名称。例如,SELECT 列名, COUNT(*) FROM 表名 GROUP BY 列名,按列名分组统计数量。
3.请简述在 SQL 查询中,WHERE 子句与聚合函数的结合使用方法。
【答案】WHERE 子句用于在分组前筛选结果,而 HAVING 子句用于在分组后筛选结果。WHERE 子句在聚合函数之前执行,用于筛选满足条件的行;HAVING 子句在聚合函数之后执行,用于筛选满足条件的分组。
4.请简述在 SQL 查询中,如何使用聚合函数 COUNT 统计所有行和非空值的数量。
【答案】COUNT(*) 用于统计所有行,包括空值;COUNT(列名) 用于统计非空值的数量。例如,SELECT COUNT(*) FROM 表名 统计所有行;SELECT COUNT(列名) FROM 表名 统计非空值的数量。
5.(读程序结果题)阅读以下 SQL 查询语句,写出查询结果。
SELECT COUNT(*) AS 总图书数量 FROM 图书信息表;
图书信息表:
ISBN
书名
定价
类别
出版社
入库日期
978-123456
数据库原理
50.00
计算机
高等教育出版社
2024-01-01
978-234567
网络编程
45.00
计算机
电子工业出版社
2024-02-15
978-345678
文学名著
30.00
文学
人民文学出版社
2024-03-20
978-456789
历史研究
60.00
历史
社会科学出版社
2024-04-25
978-567890
医学基础
70.00
医药
科学出版社
2024-05-30
【答案】总图书数量:5
COUNT(*) 统计所有行,包括空值,返回图书信息表中的总图书数量。
知识点二 排序与子查询
1.请解释在 SQL 查询中,`ORDER BY` 子句的作用及其用法。
【答案】`ORDER BY` 子句用于对查询结果进行排序,支持升序(ASC)和降序(DESC)。可以对单列或多列进行排序。例如,`ORDER BY 列1 ASC, 列2 DESC` 表示先按列1升序排序,再按列2降序排序。
2.请解释在 SQL 查询中,子查询的作用及其用法。
【答案】子查询是嵌套在另一个查询中的查询语句,可以返回单值或多行值。子查询通常用于 `WHERE` 子句中,用于过滤数据。子查询需要用圆括号括起来,且子查询中不能使用 `ORDER BY` 子句,排序应在最外层查询中完成。
3.请举例说明如何在 SQL 查询中使用子查询返回单值。
【答案】例如,查询定价高于所有图书平均定价的图书,可以使用以下语句:`SELECT * FROM 图书表 WHERE 定价 > (SELECT AVG(定价) FROM 图书表)`。子查询 `(SELECT AVG(定价) FROM 图书表)` 用于计算所有图书的平均定价,外层查询用于筛选定价高于平均定价的图书。
4.请举例说明如何在 SQL 查询中使用子查询返回多行值。
【答案】例如,查询全部没有被借出的图书,可以使用以下语句:`SELECT * FROM 图书表 WHERE 借出状态 NOT IN (SELECT 借出状态 FROM 图书表 WHERE 借出状态 = '借出')`。子查询 `(SELECT 借出状态 FROM 图书表 WHERE 借出状态 = '借出')` 用于查询所有被借出的图书状态,外层查询用于筛选未被借出的图书。
5.(读程序结果题)以下 SQL 查询语句的执行结果是什么?
SELECT * FROM 图书表 WHERE 定价 > (SELECT AVG(定价) FROM 图书表) ORDER BY 定价 DESC;
图书表:
ISBN
书名
定价
出版社
借出状态
1
计算机基础
15
高等教育出版社
未借出
2
文学名著
35
高等教育出版社
借出
3
历史故事
30
人民出版社
未借出
4
现代文学
40
高等教育出版社
未借出
【答案】
ISBN
书名
定价
出版社
借出状态
4
现代文学
40
高等教育出版社
未借出
2
文学名著
35
高等教育出版社
借出
子查询 `(SELECT AVG(定价) FROM 图书表)` 计算所有图书的平均定价为 30。外层查询筛选定价大于 30 的图书,并按定价降序排列。
知识点三 查询结果的保存与管理
1. 请简述如何使用 SELECT INTO 语句将查询结果保存为新表。
【答案】使用 SELECT INTO 语句可以将查询结果保存为新表。例如,要将“类别”为“医药”的图书信息保存为“医药类图书”表,可以使用以下 SQL 语句:
SELECT * INTO 医药类图书 FROM 图书表 WHERE 类别 = '医药';
该语句会将满足条件的记录保存到一个新的表中,新表的结构和数据与查询结果一致。
2. 请简述在查询设计中如何执行查询并查看结果。
【答案】在查询设计中执行查询并查看结果的方法是:完成表的添加和条件的设置后,单击“执行”按钮,查询结果会显示在结果窗格中。## 读程序结果题
3. 请简述如何通过对象资源管理器删除已添加的表。
【答案】在 SQL Server 的对象资源管理器中,删除已添加的表的操作步骤为:在“关系图窗格”中右击该表,然后选择“删除”选项。
4. 请简述在查询设计过程中如何查看自动生成的 SQL 语句。
【答案】在查询设计过程中,查看自动生成的 SQL 语句的方法是:在“SQL 窗格”中查看。该窗格会根据用户在“关系图窗格”和“条件窗格”中的操作自动生成相应的 SQL 语句。
5.(读程序结果题)阅读以下 SQL 查询语句,写出查询结果:
SELECT * INTO 新表 FROM 原表 WHERE 序号 > 10;
原表数据:
序号
数据
5
A
15
B
20
C
【答案】新表数据:
序号
数据
15
B
20
C
该查询语句使用 `SELECT INTO` 将原表中序号大于 10 的记录保存到新表中。因此,新表中只包含满足条件的两条记录。
原创精品资源学科网独家享有版权,侵权必究!2
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$