内容正文:
编写说明:河北省对口招生《计算机类考纲百套卷》,依据《河北省2028年中等职业学校对口升学考试计算机类专业考试大纲》编写。本专辑涵盖四门课程,且每门课程均采用三阶递进式训练体系:基础层(具象化支架)拆解考点为微目标,紧扣考纲 “掌握”“理解” 要求编写考点训练卷;巩固层(关联性支架)强化知识交叉与场景关联,按考纲专题编写专题训练卷;应用层(引导性支架)聚焦真题突破,结合知识模块与教材编写课程综合卷。
本试卷是第33卷,为考点训练卷,按《数据库原理与应用技术》范围和要求编写。具体内容为:1.聚合函数:COUNT()、SUM()、AVG()、MAX()、MIN();2.数学函数:ABS()、FLOOR()、RAND()、TRUNCATE()、SQRT()、ROUND()
2027版河北省《计算机类考纲百套卷》 第33卷
《数据库原理与应用技术》
聚合函数与数学函数 知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共25小题,每题2分,共50分)
1.在SQL语句中,若要统计“学生表”中“年龄”字段值不为空的学生人数,应使用( )。
A. COUNT(*) B. COUNT(年龄) C. SUM(年龄) D. AVG(年龄)
【答案】B
【解析】SUM() 函数用于计算数值列的总和。
2.在MySQL中,执行 SELECT ROUND(123.4567, 2);的结果是( )。
A. 123.45 B. 123.46 C. 123.457 D. 123.4567
【答案】B
【解析】ROUND(x, d) 函数将x四舍五入到小数点后d位。123.4567四舍五入到小数点后两位,看第三位小数是6,进位,所以是123.46。
3.执行SELECT TRUNCATE(9.99, 0), FLOOR(9.99)的结果是( )
A. 9, 9 B. 9.99, 9 C. 9, 10 D. 9, 9.99
【答案】A
【解析】TRUNCATE(9.99, 0)直接截断小数点后所有数字,不进行四舍五入,结果为9。FLOOR(9.99)返回小于或等于参数的最大整数,即9。
4.表达式ROUND(123.456, 2) + TRUNCATE(123.456, 2)的结果是( )
A. 246.91 B. 246.912 C. 246.902 D. 247.812
【答案】A
【解析】ROUND(123.456, 2)的结果为123.46,TRUNCATE(123.456, 2)保留 2 位小数,直接截断不四舍五入。
5.表达式ROUND(123.456, -1)的结果是( )
A. 123.5 B. 120 C. 123.4 D. 123.46
【答案】B
【解析】-1表示舍入到十位。
6.想要随机从Products表中选取5条记录展示,最有可能用到的函数是( )
A. ABS() B. RAND() C. FLOOR() D. SQRT()
【答案】B
【解析】RAND():MySQL 随机数函数。
7.关于COUNT(*)和COUNT(列名),以下说法正确的是( )
A. COUNT(*)统计所有行数,包括NULL值所在的行;COUNT(列名)统计该列非NULL值的行数
B. COUNT(*)和COUNT(列名)结果永远相同
C. 在一个没有NULL值的列上,COUNT(*)的结果一定小于COUNT(列名)的结果
D. COUNT(列名)会统计包括NULL值在内的所有行数
【答案】A
【解析】COUNT (*) 统计所有行(含 NULL 行);COUNT (列名) 只统计该列非 NULL 行。
8.函数FLOOR(RAND() * 10)可能返回的最小值和最大值分别是( )
A. 0, 9 B. 1, 10 C. 0, 10 D. 1, 9
【答案】A
【解析】RAND() 范围:[0,1) ,包含 0,不包含 1,RAND() * 10 范围:[0, 10),FLOOR() 向下取整。
9.表达式TRUNCATE(ROUND(6.548, 1), 2)的结果是( )
A. 6.50 B. 6.54 C. 6.55 D. 6.6
【答案】A
【解析】内层ROUND(6.548, 1)保留一位小数,对百分位4进行四舍五入,得6.5。外层TRUNCATE(6.5, 2)保留两位小数,但6.5只有一位,补零,结果为6.50。
10.想要生成一个0到100(包含0和100)之间的随机整数,可以使用( )
A. FLOOR(RAND() * 100) B. FLOOR(RAND() * 101)
C. ROUND(RAND() * 100, 0) D. TRUNCATE(RAND() * 100, 0)
【答案】B
【解析】 要包含100,随机数上限应为100。RAND()范围[0,1),RAND()*101范围[0,101)。FLOOR向下取整,得到0到100的整数。
11.以下( )函数调用有可能返回NULL值。
A. ABS(-5) B. FLOOR(3.14) C. SQRT(4) D. SQRT(-4)
【答案】D
【解析】在标准SQL中,SQRT函数的参数不能为负数。在大多数数据库系统中(如MySQL),对负数求平方根会返回NULL,而不会直接报错。
12.执行SELECT ROUND(1234.567, -2)和SELECT TRUNCATE(1234.567, -2),结果分别是( )
A. 1200, 1200 B. 1234.57, 1234.56
C. 1200, 1234.56 D. 1234.57, 1200
【答案】A
【解析】ROUND(1234.567, -2):精度-2,舍入到百位。看十位数字3,小于5舍去,百位及以后补零,得1200。TRUNCATE(1234.567, -2):精度-2,截断到百位。直接保留百位2,后面的34.567截掉补零,得1200。
13.函数TRUNCATE( , 2)和ROUND( , 2)在对待数字1.235时,结果分别是( )
A. 1.23, 1.24 B. 1.24, 1.24 C. 1.23, 1.23 D. 1.24, 1.23
【答案】A
【解析】TRUNCATE(1.235, 2)直接截断,保留两位小数,第三位及以后丢弃,得1.23。ROUND(1.235, 2)对第三位小数5进行四舍五入,得1.24。
14. 在MySQL中,SELECT SUM(1/0)的结果是( )
A. 报错:除零错误 B. NULL C. 0 D. 1
【答案】B
【解析】在MySQL中,除以零的结果是NULL,而不是立即引发错误。
15.若要生成一个 10 到 50 之间(包含10和50)的随机整数,正确的 SQL 表达式是( )。
A. FLOOR(RAND() * 40) + 10 B. FLOOR(RAND() * 41) + 10
C. ROUND(RAND() * 50) + 10 D. CEIL(RAND() * 40) + 10
【答案】B
【解析】公式为 FLOOR(RAND() * (max - min + 1)) + min。即 FLOOR(RAND() * 41) + 10。
16.执行 SELECT TRUNCATE(19.99, 1); 的结果是( )。
A. 20.0 B. 19.9 C. 19.0 D. 19.99
【答案】B
【解析】TRUNCATE(x, d) 是直接截断,不进行四舍五入。保留1位小数,结果为 19.9。
17.表达式 ABS(FLOOR(-5.8) + ROUND(5.8)) 的计算结果是( )。
A. -1 B. 1 C. 0 D. -11
【答案】C
【解析】FLOOR(-5.8) 为 -6,ROUND(5.8) 为 6。两者相加为 0,ABS(0) 为 0。
18.若表中有 10 行数据,其中 age 列有 2 行是 NULL。执行 SELECT COUNT(age) FROM table; 的结果是( )。
A. 10 B. 8 C. 2 D. NULL
【答案】B
【解析】COUNT(列名) 忽略 NULL 值,10 - 2 = 8。
19.下列关于 MIN() 和 MAX() 函数的说法,正确的是( )。
A. 只能用于数值类型 B. 只能用于日期类型
C. 可以用于数值、字符串、日期等类型 D. 遇到 NULL 值会报错
【答案】C
【解析】MIN ()、MAX () 在 MySQL 中支持数值、日期、字符串类型。
20.执行 SELECT FLOOR(RAND() * 2); 可能产生的结果集合是( )。
A. {0, 1, 2} B. {0, 1} C. {1, 2} D. {0.1, 0.9}
【答案】B
【解析】RAND() 产生 [0, 1),乘以 2 后范围是 [0, 2),FLOOR 向下取整只能是 0 或 1。
21.关于 FLOOR(3.99) 和 CEIL(3.01),下列说法正确的是( )。
A. 结果相同 B. 前者大 C. 后者大 D. 都是 3
【答案】C
【解析】FLOOR(3.99) = 3,CEIL(3.01) = 4。
22.关于聚合函数的以下说法,错误的是( )
A. 聚合函数在计算时忽略NULL值(COUNT(*)除外)
B. 全为NULL值的列,SUM()返回NULL而非0
C. MAX()和MIN()函数可以用于字符型和日期型字段
D. 所有聚合函数都可以在WHERE子句中直接使用
【答案】D
【解析】聚合函数不能直接在WHERE子句中使用,因为WHERE在GROUP BY之前执行,此时聚合尚未完成。若要筛选聚合结果,需使用HAVING子句
23.关于COUNT(*)与COUNT(1)的说法,正确的是( )
A. COUNT()会统计所有行,COUNT(1)只统计值为1的行
B. 在InnoDB引擎中,COUNT()比COUNT(1)更高效
C. COUNT(*)和COUNT(1)在功能上完全等价,都统计所有行数
D. COUNT(1)中的1代表第一列的值
【答案】C
【解析】COUNT(*):统计所有行的数量,包含 NULL 值和重复行。COUNT(1):统计表达式 1 的值,由于 1 是非空常量,所以也会统计所有行。
24.执行 SELECT FLOOR(-3.7), FLOOR(3.7), FLOOR(-0.3), FLOOR(0.3); 的结果是( )
A. -4, 3, -1, 0 B. -3, 4, 0, 1
C. -4, 3, -1, 1 D. -3, 4, -1, 0
【答案】A
【解析】FLOOR() 是向下取整。
25.执行 SELECT ROUND(1.5) + FLOOR(-1.5) + ABS(-2.5) + TRUNCATE(2.5, 0); 的结果是( )
A. 1.5 + (-2) + 2.5 + 2 = 4 B. 2 + (-2) + 2.5 + 2 = 4.5
C. 2 + (-2) + 3 + 2 = 5 D. 2 + (-1) + 2.5 + 2 = 5.5
【答案】B
【解析】TRUNCATE(2.5, 0) = 2(直接截断小数部分),FLOOR(-1.5) = -2(向下取整,不大于-1.5的最大整数).
二、判断题(本大题共15小题,每题2分,共30分)
26.AVG函数在计算平均值时,如果参与计算的数值全为NULL,则返回0。( )
【答案】错
【解析】如果所有值都是NULL,或者集合为空,AVG函数返回NULL,而不是0。SUM函数同理。
27.在同一个SELECT语句中,可以同时使用COUNT(*)和COUNT(列名),它们的结果可能不同。( )
【答案】对
【解析】COUNT(*)统计所有行,COUNT(列名)统计该列非NULL的行数。如果该列存在NULL值,两者结果就不同。
28.MAX函数和MIN函数只能用于数值类型的列。( )
【答案】错
【解析】它们可以用于数值、字符串(按字符序)、日期时间等任何可排序的数据类型。
29.表达式ROUND(数值, 0)和FLOOR(数值)对于正数来说,结果总是一样的。( )
【答案】错
【解析】ROUND(正数, 0):四舍五入取整。FLOOR(正数):向下取整,直接舍弃小数。
30.在WHERE子句中可以直接使用聚合函数。( )
【答案】错
【解析】聚合函数不能直接用于WHERE子句。
31.TRUNCATE函数和ROUND函数的第二个参数(精度)都可以是负数,表示处理整数部分。( )
【答案】对
【解析】两者第二个参数为负时,都表示对小数点左边的指定位进行操作。
32.SQRT()函数的参数必须是正数,否则会报错。( )
【答案】错
【解析】在SQL中(如MySQL),对负数使用SQRT()函数通常返回NULL,而不会直接报错。
33.MIN函数在字符串类型列上使用时,返回的是按字母顺序排列最小的字符串。( )
【答案】对
【解析】MIN和MAX函数基于排序规则(Collation)进行比较。对于字符串,通常是按字典序(字母顺序)比较。
34.ROUND函数的第二个参数如果省略,默认为0,即四舍五入到整数。( )
【答案】对
【解析】ROUND(数值)等价于 ROUND(数值, 0)。
35.MAX() 函数可以用于日期类型的字段,找出最晚的日期。( )
【答案】对
【解析】日期越大代表时间越晚。
36.RAND() 函数不带参数时,每次执行都会返回一个 0 到 1 之间的随机浮点数。( )
【答案】对
【解析】MySQL 中 RAND() 不带参数时,无固定种子,每次调用都会生成新随机数。
37.使用 COUNT(列名) 时,如果该列包含重复值,它会自动去重后再计数。( )
【答案】错
【解析】需要加 DISTINCT 才会去重,如 COUNT(DISTINCT 列名)。
38.FLOOR() 和 CEIL() 函数的返回值类型通常是整数。( )
【答案】对
【解析】FLOOR() 向下取整、CEIL() 向上取整,功能就是把小数运算成整数值。
39.SELECT SUM(salary) FROM emp; 如果所有员工的工资都是 NULL,结果是 0。( )
【答案】错
【解析】SUM() 返回 NULL,不是 0。
40.RAND(10) 和 RAND(10) 在同一次查询的不同位置调用会产生不同的值。( )
【答案】错
【解析】使用相同种子值(seed)的RAND()函数会产生相同的随机数序列
三、填空题(本大题共10个题,每题2分,共20分)
41.在SQL中,用于统计表中记录总数的聚合函数是______。
【答案】COUNT(*)
【解析】COUNT(*)用于统计所有行的数量,无论是否包含NULL值。
42.如果要对Price列的值求和,并忽略其中的NULL值,应该使用______函数。
【答案】SUM
【解析】SUM函数在计算时自动忽略NULL值。
43.要获得一个0到99(包含0和99)的随机整数,可以使用表达式:FLOOR(RAND() * ______)。
【答案】100
【解析】RAND()范围[0,1),RAND()*100范围[0,100)。FLOOR向下取整,得到0-99的整数。
44.执行SELECT TRUNCATE(123.4567, 2)的结果是______。
【答案】123.45
【解析】TRUNCATE直接截断,保留两位小数,丢弃第三位及以后的部分。
45.表达式MIN(列)在列全为NULL时,返回______。
【答案】NULL
【解析】与MAX、SUM、AVG一样,MIN函数在没有非NULL值输入时,返回NULL。
46.计算表达式ROUND(TRUNCATE(3.14159, 3), 2)的结果是______。
【答案】3.14
【解析】内层TRUNCATE(3.14159, 3) = 3.141。外层ROUND(3.141, 2)对第三位小数1进行四舍五入,第二位小数保持不变,结果为3.14。
47.函数CEILING(3.01)的结果是______,它的功能是返回不小于参数的最小整数。
【答案】4
【解析】CEILING(或CEIL)是天花板函数,向上取整。
48.表达式SELECT POWER(2, 3)的结果是8,那么SELECT SQRT(POWER(3, 2))的结果是______。
【答案】3
【解析】POWER(3, 2)计算3的平方,得9。SQRT(9)计算平方根,得3。
49.执行SELECT TRUNCATE(5678, -3)的结果是______。
【答案】5000
【解析】精度-3,表示截断到千位。直接保留千位5,后面的678被截断并用0填充,结果为5000。
50.表达式ABS(FLOOR(-RAND()))的结果是______。
【答案】1
【解析】-RAND() 范围:(−1,0],FLOOR(负数小数):向下取整,对 −1<x≤0,FLOOR(x) 结果是 -1,ABS(-1) = 1。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
编写说明:河北省对口招生《计算机类考纲百套卷》,依据《河北省2028年中等职业学校对口升学考试计算机类专业考试大纲》编写。本专辑涵盖四门课程,且每门课程均采用三阶递进式训练体系:基础层(具象化支架)拆解考点为微目标,紧扣考纲 “掌握”“理解” 要求编写考点训练卷;巩固层(关联性支架)强化知识交叉与场景关联,按考纲专题编写专题训练卷;应用层(引导性支架)聚焦真题突破,结合知识模块与教材编写课程综合卷。
本试卷是第33卷,为考点训练卷,按《数据库原理与应用技术》范围和要求编写。具体内容为:1.聚合函数:COUNT()、SUM()、AVG()、MAX()、MIN();2.数学函数:ABS()、FLOOR()、RAND()、TRUNCATE()、SQRT()、ROUND()
2027版河北省《计算机类考纲百套卷》
《数据库原理与应用技术》
聚合函数与数学函数 知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共25小题,每题2分,共50分)
1.在SQL语句中,若要统计“学生表”中“年龄”字段值不为空的学生人数,应使用( )。
A. COUNT(*) B. COUNT(年龄) C. SUM(年龄) D. AVG(年龄)
2.在MySQL中,执行 SELECT ROUND(123.4567, 2);的结果是( )。
A. 123.45 B. 123.46 C. 123.457 D. 123.4567
3.执行SELECT TRUNCATE(9.99, 0), FLOOR(9.99)的结果是( )
A. 9, 9 B. 9.99, 9 C. 9, 10 D. 9, 9.99
4.表达式ROUND(123.456, 2) + TRUNCATE(123.456, 2)的结果是( )
A. 246.91 B. 246.912 C. 246.902 D. 247.812
5.表达式ROUND(123.456, -1)的结果是( )
A. 123.5 B. 120 C. 123.4 D. 123.46
6.想要随机从Products表中选取5条记录展示,最有可能用到的函数是( )
A. ABS() B. RAND() C. FLOOR() D. SQRT()
7.关于COUNT(*)和COUNT(列名),以下说法正确的是( )
A. COUNT(*)统计所有行数,包括NULL值所在的行;COUNT(列名)统计该列非NULL值的行数
B. COUNT(*)和COUNT(列名)结果永远相同
C. 在一个没有NULL值的列上,COUNT(*)的结果一定小于COUNT(列名)的结果
D. COUNT(列名)会统计包括NULL值在内的所有行数
8.函数FLOOR(RAND() * 10)可能返回的最小值和最大值分别是( )
A. 0, 9 B. 1, 10 C. 0, 10 D. 1, 9
9.表达式TRUNCATE(ROUND(6.548, 1), 2)的结果是( )
A. 6.50 B. 6.54 C. 6.55 D. 6.6
10.想要生成一个0到100(包含0和100)之间的随机整数,可以使用( )
A. FLOOR(RAND() * 100) B. FLOOR(RAND() * 101)
C. ROUND(RAND() * 100, 0) D. TRUNCATE(RAND() * 100, 0)
11.以下( )函数调用有可能返回NULL值。
A. ABS(-5) B. FLOOR(3.14) C. SQRT(4) D. SQRT(-4)
12.执行SELECT ROUND(1234.567, -2)和SELECT TRUNCATE(1234.567, -2),结果分别是( )
A. 1200, 1200 B. 1234.57, 1234.56
C. 1200, 1234.56 D. 1234.57, 1200
13.函数TRUNCATE( , 2)和ROUND( , 2)在对待数字1.235时,结果分别是( )
A. 1.23, 1.24 B. 1.24, 1.24 C. 1.23, 1.23 D. 1.24, 1.23
14. 在MySQL中,SELECT SUM(1/0)的结果是( )
A. 报错:除零错误 B. NULL C. 0 D. 1
15.若要生成一个 10 到 50 之间(包含10和50)的随机整数,正确的 SQL 表达式是( )。
A. FLOOR(RAND() * 40) + 10 B. FLOOR(RAND() * 41) + 10
C. ROUND(RAND() * 50) + 10 D. CEIL(RAND() * 40) + 10
16.执行 SELECT TRUNCATE(19.99, 1); 的结果是( )。
A. 20.0 B. 19.9 C. 19.0 D. 19.99
17.表达式 ABS(FLOOR(-5.8) + ROUND(5.8)) 的计算结果是( )。
A. -1 B. 1 C. 0 D. -11
18.若表中有 10 行数据,其中 age 列有 2 行是 NULL。执行 SELECT COUNT(age) FROM table; 的结果是( )。
A. 10 B. 8 C. 2 D. NULL
19.下列关于 MIN() 和 MAX() 函数的说法,正确的是( )。
A. 只能用于数值类型 B. 只能用于日期类型
C. 可以用于数值、字符串、日期等类型 D. 遇到 NULL 值会报错
20.执行 SELECT FLOOR(RAND() * 2); 可能产生的结果集合是( )。
A. {0, 1, 2} B. {0, 1} C. {1, 2} D. {0.1, 0.9}
21.关于 FLOOR(3.99) 和 CEIL(3.01),下列说法正确的是( )。
A. 结果相同 B. 前者大 C. 后者大 D. 都是 3
22.关于聚合函数的以下说法,错误的是( )
A. 聚合函数在计算时忽略NULL值(COUNT(*)除外)
B. 全为NULL值的列,SUM()返回NULL而非0
C. MAX()和MIN()函数可以用于字符型和日期型字段
D. 所有聚合函数都可以在WHERE子句中直接使用
23.关于COUNT(*)与COUNT(1)的说法,正确的是( )
A. COUNT()会统计所有行,COUNT(1)只统计值为1的行
B. 在InnoDB引擎中,COUNT()比COUNT(1)更高效
C. COUNT(*)和COUNT(1)在功能上完全等价,都统计所有行数
D. COUNT(1)中的1代表第一列的值
24.执行 SELECT FLOOR(-3.7), FLOOR(3.7), FLOOR(-0.3), FLOOR(0.3); 的结果是( )
A. -4, 3, -1, 0 B. -3, 4, 0, 1
C. -4, 3, -1, 1 D. -3, 4, -1, 0
25.执行 SELECT ROUND(1.5) + FLOOR(-1.5) + ABS(-2.5) + TRUNCATE(2.5, 0); 的结果是( )
A. 1.5 + (-2) + 2.5 + 2 = 4 B. 2 + (-2) + 2.5 + 2 = 4.5
C. 2 + (-2) + 3 + 2 = 5 D. 2 + (-1) + 2.5 + 2 = 5.5
二、判断题(本大题共15小题,每题2分,共30分)
26.AVG函数在计算平均值时,如果参与计算的数值全为NULL,则返回0。( )
27.在同一个SELECT语句中,可以同时使用COUNT(*)和COUNT(列名),它们的结果可能不同。( )
28.MAX函数和MIN函数只能用于数值类型的列。( )
29.表达式ROUND(数值, 0)和FLOOR(数值)对于正数来说,结果总是一样的。( )
30.在WHERE子句中可以直接使用聚合函数。( )
31.TRUNCATE函数和ROUND函数的第二个参数(精度)都可以是负数,表示处理整数部分。( )
32.SQRT()函数的参数必须是正数,否则会报错。( )
33.MIN函数在字符串类型列上使用时,返回的是按字母顺序排列最小的字符串。( )
34.ROUND函数的第二个参数如果省略,默认为0,即四舍五入到整数。( )
35.MAX() 函数可以用于日期类型的字段,找出最晚的日期。( )
36.RAND() 函数不带参数时,每次执行都会返回一个 0 到 1 之间的随机浮点数。( )
37.使用 COUNT(列名) 时,如果该列包含重复值,它会自动去重后再计数。( )
38.FLOOR() 和 CEIL() 函数的返回值类型通常是整数。( )
39.SELECT SUM(salary) FROM emp; 如果所有员工的工资都是 NULL,结果是 0。( )
40.RAND(10) 和 RAND(10) 在同一次查询的不同位置调用会产生不同的值。( )
三、填空题(本大题共10个题,每题2分,共20分)
41.在SQL中,用于统计表中记录总数的聚合函数是______。
42.如果要对Price列的值求和,并忽略其中的NULL值,应该使用______函数。
43.要获得一个0到99(包含0和99)的随机整数,可以使用表达式:FLOOR(RAND() * ______)。
44.执行SELECT TRUNCATE(123.4567, 2)的结果是______。
45.表达式MIN(列)在列全为NULL时,返回______。
46.计算表达式ROUND(TRUNCATE(3.14159, 3), 2)的结果是______。
47.函数CEILING(3.01)的结果是______,它的功能是返回不小于参数的最小整数。
48.表达式SELECT POWER(2, 3)的结果是8,那么SELECT SQRT(POWER(3, 2))的结果是______。
49.执行SELECT TRUNCATE(5678, -3)的结果是______。
50.表达式ABS(FLOOR(-RAND()))的结果是______。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$