内容正文:
编写说明:依托三阶支架资源编写方案,《一课一练》明确基础层具象化支架定位,作为课堂同步配套资源,其内容与课堂教学深度绑定,并且精准匹配中职学生知识基础与学习特质,遵循"由浅入深、循序渐进"的认知规律,聚焦基础性与实效性核心,通过拆解知识点、简化认知难度,切实降低学习门槛,为后续知识巩固与能力提升筑牢根基,是优质课后作业首选。
本卷是《数据库原理与应用技术-MySQL》(河北科学技术出版社)《一课一练》第24练,内容是比较运算符。
《数据库原理与应用技术-MySQL》(河北科学技术出版社)《一课一练》 第24练
比较运算符
一、单项选择题
1.下列关于 MySQL 比较运算符的描述,正确的是( )
A. =运算符可以正确比较两个 NULL 值是否相等
B. <=>运算符可以安全比较 NULL 值,NULL <=> NULL返回 1
C. !=和<>运算符功能不同,结果也不同
D. 5 > NULL返回 0
2.执行SELECT * FROM student WHERE age BETWEEN 18 AND 20;语句,查询结果包含的年龄是( )
A. 仅 18 和 20
B. 18、19、20
C. 大于 18 且小于 20
D. 大于等于 18 且小于 20
3.下列 SQL 语句中,与SELECT * FROM student WHERE class_id IN (1, 3, 5);功能等价的是( )
A. SELECT * FROM student WHERE class_id = 1 AND class_id = 3 AND class_id = 5;
B. SELECT * FROM student WHERE class_id = 1 OR class_id = 3 OR class_id = 5;
C. SELECT * FROM student WHERE class_id BETWEEN 1 AND 5;
D. SELECT * FROM student WHERE 1 <= class_id <= 5;
4.要查询学生表中所有姓 "李" 且名字为两个字的学生,下列 SQL 语句正确的是( )
A. SELECT * FROM student WHERE name LIKE '李_';
B. SELECT * FROM student WHERE name LIKE '李%';
C. SELECT * FROM student WHERE name = '李_';
D. SELECT * FROM student WHERE name REGEXP '^李';
5.在 MySQL 中,执行SELECT '123' = 123, 'abc' = 123;语句的结果是( )
A. 1, 0
B. 0, 1
C. 1, NULL
D. NULL, 0
二、填空题
1.MySQL 中,任何值与 NULL 使用普通比较运算符(=、!=、>、< 等)进行比较,结果都为______;判断一个值是否为 NULL,必须使用______或______运算符。
2.MySQL 中用于安全比较两个值是否相等(包括 NULL 值)的运算符是______,当两个值都为 NULL 时,该运算符返回______。
3.LIKE运算符支持两个通配符:______代表任意长度(包括 0 长度)的任意字符,______代表单个任意字符。
4.使用REGEXP运算符进行正则表达式匹配时,匹配字符串开头的符号是______,匹配字符串结尾的符号是______。
5.在 MySQL 中,比较运算的结果只能是______、______或______三种值之一。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$
编写说明:依托三阶支架资源编写方案,《一课一练》明确基础层具象化支架定位,作为课堂同步配套资源,其内容与课堂教学深度绑定,并且精准匹配中职学生知识基础与学习特质,遵循"由浅入深、循序渐进"的认知规律,聚焦基础性与实效性核心,通过拆解知识点、简化认知难度,切实降低学习门槛,为后续知识巩固与能力提升筑牢根基,是优质课后作业首选。
本卷是《数据库原理与应用技术-MySQL》(河北科学技术出版社)《一课一练》第24练,内容是比较运算符。
《数据库原理与应用技术-MySQL》(河北科学技术出版社)《一课一练》 第24练
比较运算符
一、单项选择题
1.下列关于 MySQL 比较运算符的描述,正确的是( )
A. =运算符可以正确比较两个 NULL 值是否相等
B. <=>运算符可以安全比较 NULL 值,NULL <=> NULL返回 1
C. !=和<>运算符功能不同,结果也不同
D. 5 > NULL返回 0
【答案】B
【解析】A 选项错误,普通比较运算符(=、!=、>、< 等)与 NULL 比较时,结果永远为 NULL;B 选项正确,<=>是安全等于运算符,专门用于 NULL 值的比较,NULL <=> NULL返回 1(真);C 选项错误,!=和<>是完全等价的不等于运算符;D 选项错误,5 > NULL返回 NULL,而非 0。
2.执行SELECT * FROM student WHERE age BETWEEN 18 AND 20;语句,查询结果包含的年龄是( )
A. 仅 18 和 20
B. 18、19、20
C. 大于 18 且小于 20
D. 大于等于 18 且小于 20
【答案】B
【解析】BETWEEN ... AND ...是闭区间运算符,包含两端的边界值。因此该语句会查询出年龄大于等于 18 且小于等于 20 的所有学生记录,即 18、19、20 岁的学生。
3.下列 SQL 语句中,与SELECT * FROM student WHERE class_id IN (1, 3, 5);功能等价的是( )
A. SELECT * FROM student WHERE class_id = 1 AND class_id = 3 AND class_id = 5;
B. SELECT * FROM student WHERE class_id = 1 OR class_id = 3 OR class_id = 5;
C. SELECT * FROM student WHERE class_id BETWEEN 1 AND 5;
D. SELECT * FROM student WHERE 1 <= class_id <= 5;
【答案】B
【解析】IN运算符用于判断一个值是否在指定的集合中,等价于多个OR条件的组合。A 选项错误,一个学生不可能同时属于多个班级;C、D 选项错误,它们会查询出 1 到 5 之间的所有班级,包括 2 和 4 班。
4.要查询学生表中所有姓 "李" 且名字为两个字的学生,下列 SQL 语句正确的是( )
A. SELECT * FROM student WHERE name LIKE '李_';
B. SELECT * FROM student WHERE name LIKE '李%';
C. SELECT * FROM student WHERE name = '李_';
D. SELECT * FROM student WHERE name REGEXP '^李';
【答案】A
【解析】LIKE运算符用于模糊查询,其中_代表单个任意字符,%代表任意长度的任意字符。A 选项'李_'匹配以 "李" 开头且后面跟一个字符的名字,即两个字的李姓学生;B 选项会匹配所有李姓学生,无论名字长度;C 选项错误,=不能用于模糊查询;D 选项会匹配所有以 "李" 开头的名字,无论长度。
5.在 MySQL 中,执行SELECT '123' = 123, 'abc' = 123;语句的结果是( )
A. 1, 0
B. 0, 1
C. 1, NULL
D. NULL, 0
【答案】A
【解析】MySQL 会自动进行类型转换:当字符串与数字比较时,会将字符串转换为数字再进行比较。'123'转换为数字 123,因此'123' = 123返回 1(真);'abc'不以数字开头,转换为数字 0,因此'abc' = 123返回 0(假)。
二、填空题
1.MySQL 中,任何值与 NULL 使用普通比较运算符(=、!=、>、< 等)进行比较,结果都为______;判断一个值是否为 NULL,必须使用______或______运算符。
【答案】NULL;IS NULL;IS NOT NULL
【解析】这是 MySQL 比较运算的核心规则。NULL 表示 "未知值",无法用普通比较运算符判断,必须使用专门的IS NULL和IS NOT NULL运算符。
2.MySQL 中用于安全比较两个值是否相等(包括 NULL 值)的运算符是______,当两个值都为 NULL 时,该运算符返回______。
【答案】<=>;1(或真)
【解析】<=>是 MySQL 特有的安全等于运算符,它与=的唯一区别是可以正确比较 NULL 值。NULL <=> NULL返回 1,NULL <=> 123返回 0。
3.LIKE运算符支持两个通配符:______代表任意长度(包括 0 长度)的任意字符,______代表单个任意字符。
【答案】%;_
【解析】这是模糊查询最基础的两个通配符。例如'a%'匹配以 "a" 开头的任意字符串,'a_'匹配以 "a" 开头且长度为 2 的字符串。
4.使用REGEXP运算符进行正则表达式匹配时,匹配字符串开头的符号是______,匹配字符串结尾的符号是______。
【答案】^;$
【解析】REGEXP是 MySQL 的正则表达式匹配运算符。^表示匹配开头,$表示匹配结尾。例如'^abc$'匹配精确的 "abc" 字符串。
5.在 MySQL 中,比较运算的结果只能是______、______或______三种值之一。
【答案】1(真);0(假);NULL
【解析】MySQL 中没有布尔类型,用 1 表示真,0 表示假。当比较涉及 NULL 值时,结果为 NULL。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$