| 4.7 本章小结 |
|------------------|
本章主要对单表查询进行了详细讲解。首先介绍了 SELECT 语句;其次讲解了简单查询以及条件查询;然后讲解了高级查询和设置别名;最后通过一个上机实践让读者提高单表查询的动手能力。通过本章的学习,读者能够掌握单表查询的基本操作,为后续的学习打下坚实的基础。
| 4.8课后习题 |
|------------------|
一、填空题
- MySQL 中提供了_____关键字,可以在查询时去除重复的值。
- 使用 ORDER BY 对查询结果进行排序时,默认是按_____排列。
- 在 SELECT 语句中,用于对分组查询结果再进行过滤的关键字是_____。
- 为了使查询结果满足用户的要求,可以使用_____对查询结果进行排序。
- 在聚合函数中,用于求出某个字段平均值的函数是_____。
二、判断题
- 当 DISTINCT 作用于多个字段时,只有 DISTINCT 关键字后指定的多个字段值都相同,才会被视为重复记录。()
- 在数据表中,某些列的值可能为空值(NULL),那么在 SQL 语句中可以通过= NULL来判断是否为空值。()
- 在对字符串进行模糊查询时,一个下画线通配符可匹配多个字符。()
- 在 SELECT 语句的 WHERE 条件中,BETWEEN AND 用于判断某个字段的值是否在指定的范围之内。()
- SELECT 语句中可以使用 AS 关键字指定表名的别名或字段的别名,AS 关键字也可以省略不写。()
三、选择题
- 下列选项中查询 student 表中 id 值不在 2 和 5 之间的学生的 SQL 语句是()
A. SELECT * FROM student where id!=2,3,4,5;B. SELECT * FROM student where id not between 5 and 2; C. SELECT * FROM student where id not between 2 and 5; D. SELECT * FROM student where id not in 2,3,4,5;
2.要想分页(每页显示10条)显示test表中的数据,那么获取第2页数据的5Q
语句是()。
A.SELECT* FROMtest LIMIT 10,10; B.SELECTFROM test LIMIT 11,10; C.SELECT * FROM test LIMIT 10,20; D.SELECT FROM test LIMIT 11,20;
3.下列选项中代表匹配任意长度字符串的通配符是()。
A.% B.*
C._
D.?
4.下列选项中用于求出表中某个字段所有值的总和的函数是()。
A.AVGO B.SUMO C.MINO D.MAX()
5.下列选项中可以查询 student表中id字段值小于5并且gender字段值为“女”的学生姓名的 SQL 语句是()。
A. SELECT name FROM student WHERE id<5 OR gender='女'; B. SELECT name FROM student WHERE id<5 AND gender='女'; C.SELECT name FROM student WHERE id<5 ,gender='女';
D. SELECT name FROM student WHERE id<5 AND WHERE gender='女';
答案:
解答 | 4.8 课后习题
一、填空题
- DISTINCT
- 升序(ASCENDING)
- HAVING
- ORDER BY
- AVG()
二、判断题
- 正确(DISTINCT作用于多个字段时,所有指定字段的值都需相同才认为是重复记录)
- 错误(在SQL中,应使用
IS NULL
而非= NULL
来判断空值) - 错误(一个下画线
_
通配符仅匹配单个字符) - 正确(BETWEEN AND 用于检查值是否在指定的闭区间内)
- 正确(AS关键字可以用来指定别名,也可以省略直接跟别名)
三、选择题
- C(查询id不在2和5之间的学生应使用
NOT BETWEEN 2 AND 5
) - A(获取第2页数据,从第11条开始,取10条,因此是
LIMIT 10, 10
第一张值为偏移量,第二个是个数,且从0开始0-9为第一页,10-19为第二页) - A(
%
代表匹配任意长度的字符串) - B(求和函数为
SUM()
) - B(逻辑关系应使用
AND
连接,且避免多余的WHERE关键字,正确格式为WHERE id<5 AND gender='女'
)