SQL考试题库及详细答案(完整版)_第1页
SQL考试题库及详细答案(完整版)_第2页
SQL考试题库及详细答案(完整版)_第3页
SQL考试题库及详细答案(完整版)_第4页
SQL考试题库及详细答案(完整版)_第5页
已阅读5页,还剩2页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SQL考试题库及详细答案(完整版)本题库适用于计算机基础、数据库入门、岗位技能考核等场景,题型包含选择题、填空题、简答题、实操题,覆盖SQL基础语法、查询、函数、约束、多表查询、事务等核心知识点,答案详细易懂,贴合日常考试考核标准。一、单项选择题(共20题,每题2分,共40分)说明:每题只有一个正确答案,选择最优选项1.在SQL语言中,用来查询数据的核心语句是()A.INSERTB.SELECTC.UPDATED.DELETE答案:B解析:SELECT语句为SQL数据查询语句,用于从数据库表中获取数据;INSERT为插入数据、UPDATE为更新数据、DELETE为删除数据。2.以下不属于SQL数据定义语言(DDL)的是()A.CREATEB.ALTERC.GRANTD.DROP答案:C解析:DDL数据定义语言包含CREATE(创建)、ALTER(修改)、DROP(删除);GRANT属于DCL数据控制语言,用于权限授予。3.SQL中,用来对查询结果去重的关键字是()A.UNIQUEB.DISTINCTC.LIMITD.ORDERBY答案:B解析:DISTINCT用于查询结果去重;UNIQUE是表字段唯一约束,用于限制字段值不重复;LIMIT用于限制查询条数,ORDERBY用于排序。4.条件查询中,用来模糊查询包含指定字符的关键字是()A.INB.BETWEENC.LIKED.EXISTS答案:C解析:LIKE搭配通配符%、_实现模糊查询;IN用于匹配多个固定值,BETWEEN用于区间查询,EXISTS用于子查询存在性判断。5.排序语句ORDERBY默认的排序方式是()A.升序ASCB.降序DESCC.随机排序D.自定义排序答案:A解析:ORDERBY默认升序排列(ASC可省略),如需降序必须手动添加DESC关键字。6.限制查询结果返回指定条数数据的关键字是()A.TOPB.LIMITC.ROWD.COUNT答案:B解析:MySQL使用LIMIT限制查询条数;TOP为SQLServer语法,COUNT为聚合函数用于统计数量。7.以下聚合函数中,用于求取字段平均值的是()A.SUM()B.MAX()C.AVG()D.MIN()答案:C解析:AVG()为平均值函数;SUM()求和、MAX()求最大值、MIN()求最小值。8.分组查询必须搭配的条件过滤关键字是()A.WHEREB.HAVINGC.IFD.CASE答案:B解析:GROUPBY分组后筛选条件使用HAVING;WHERE用于分组前原始数据筛选,无法筛选分组后的结果。9.用于修改数据表结构的语句是()A.UPDATEB.ALTERC.MODIFYD.CHANGE答案:B解析:ALTERTABLE用于修改数据表整体结构(增删字段、修改字段类型等);UPDATE修改表数据,MODIFY、CHANGE为ALTER的子参数。10.主键约束的关键字是()A.UNIQUEB.NOTNULLC.PRIMARYKEYD.FOREIGNKEY答案:C解析:PRIMARYKEY为主键约束,唯一且非空;UNIQUE为唯一约束,NOTNULL为非空约束,FOREIGNKEY为外键约束。11.外键约束的主要作用是()A.保证字段唯一B.保证数据参照完整性C.禁止为空D.自动递增答案:B解析:外键用于关联两张数据表,约束从表数据必须在主表存在对应数据,保障数据参照完整性。12.MySQL中,实现字段值自动递增的属性是()A.AUTO_INCREMENTB.INCREMENTC.AUTO_ADDD.ADD_NUM答案:A解析:AUTO_INCREMENT为MySQL专属自增属性,常用于主键ID字段,新增数据自动累加数值。13.以下关于WHERE和HAVING的说法正确的是()A.HAVING可以单独使用B.WHERE筛选分组后数据C.HAVING筛选分组后数据D.两者功能完全一致答案:C解析:WHERE在分组前过滤原始数据,HAVING在GROUPBY分组后过滤分组结果,HAVING必须依托分组语句使用。14.内连接的关键字是()A.LEFTJOINB.RIGHTJOINC.INNERJOIND.FULLJOIN答案:C解析:INNERJOIN为内连接,只返回两张表中匹配成功的数据;LEFT/RIGHT为左右外连接,FULL为全连接。15.SQL事务中,提交事务的语句是()A.ROLLBACKB.COMMITC.STARTD.END答案:B解析:COMMIT提交事务,数据永久生效;ROLLBACK回滚事务,撤销未提交的操作。16.以下哪个语句可以删除整张数据表(包含表结构和数据)()A.DELETEB.TRUNCATEC.DROPTABLED.CLEAR答案:C解析:DROPTABLE删除表结构和所有数据;DELETE仅删除表数据、保留表结构;TRUNCATE清空表数据,不删除表结构。17.统计数据表中总记录条数的函数是()A.COUNT(*)B.SUM(*)C.TOTAL()D.MAX(*)答案:A解析:COUNT(*)统计表所有记录数,COUNT(字段)统计该字段非空记录数。18.用于查询不在指定区间范围内数据的关键字是()A.NOTINB.NOTBETWEENC.NOTLIKED.ISNOTNULL答案:B解析:BETWEEN...AND...用于区间查询,NOTBETWEEN表示不在对应区间内;NOTIN用于排除指定离散值。19.以下属于SQL事务四大特性的是()A.安全性B.原子性C.开放性D.兼容性答案:B解析:事务四大特性(ACID):原子性、一致性、隔离性、持久性。20.左连接查询的核心特点是()A.只显示匹配数据B.保留左表所有数据C.保留右表所有数据D.随机展示数据答案:B解析:LEFTJOIN左连接会保留左表全部数据,右表无匹配数据时显示为空值。二、填空题(共10题,每题2分,共20分)1.SQL语言分为四大类,分别是DDL、DML、DQL、________。答案:DCL(数据控制语言)2.模糊查询中,________通配符代表任意多个字符,________代表单个任意字符。答案:%、_3.分组查询的关键字是________,分组后筛选条件使用________。答案:GROUPBY、HAVING4.数据表的三大完整性约束分别是实体完整性、________、用户自定义完整性。答案:参照完整性5.事务回滚的SQL语句是________,事务提交的语句是________。答案:ROLLBACK、COMMIT6.去除查询结果重复数据的关键字是________。答案:DISTINCT7.多表查询中,能够返回两张表所有数据的连接方式是________。答案:全连接(FULLJOIN)8.修改表中已有数据的SQL语句是________。答案:UPDATE9.判断字段值为空的关键字是________,非空为________。答案:ISNULL、ISNOTNULL10.创建数据表的核心语句是________。答案:CREATETABLE三、简答题(共4题,每题5分,共20分)1.简述DELETE、TRUNCATE、DROP三者的区别。答案:(1)DELETE:属于DML数据操作语言,仅删除表中数据,保留表结构,支持事务回滚,可加WHERE条件精准删除指定数据,删除大量数据效率较低。(2)TRUNCATE:属于DDL数据定义语言,清空整张表所有数据,保留表结构,不支持事务回滚,无日志记录,清空数据效率远高于DELETE,无法删除指定条件数据。(3)DROP:属于DDL数据定义语言,直接删除整张数据表,包含表结构、数据、索引、约束等所有内容,不可恢复,风险最高。2.简述WHERE和HAVING的区别。答案:(1)执行顺序:WHERE在分组(GROUPBY)之前执行,过滤原始表数据;HAVING在分组之后执行,过滤分组后的统计结果。(2)使用范围:WHERE不支持聚合函数(SUM、AVG等);HAVING可以使用聚合函数。(3)依赖条件:WHERE可独立使用;HAVING必须配合GROUPBY分组语句使用,不可单独生效。3.简述事务的四大特性(ACID)含义。答案:(1)原子性:一个事务的所有操作要么全部执行成功,要么全部撤销,不可部分执行。(2)一致性:事务执行前后,数据库的数据完整性和约束规则保持一致,不会出现数据错乱。(3)隔离性:多个事务并发执行时,相互独立互不干扰,每个事务感知不到其他事务的执行过程。(4)持久性:事务提交成功后,数据修改永久生效,即使数据库重启、宕机,数据也不会丢失。4.简述内连接、左连接、右连接的区别。答案:(1)内连接(INNERJOIN):只返回两张表中关联字段匹配成功的数据,无匹配的数据不展示。(2)左连接(LEFTJOIN):以左表为基准,保留左表所有数据,右表匹配成功则展示对应数据,无匹配则显示空值。(3)右连接(RIGHTJOIN):以右表为基准,保留右表所有数据,左表匹配成功则展示对应数据,无匹配则显示空值。四、实操应用题(共2题,每题10分,共20分)现有两张数据表:学生表student(s_id学生主键ID,s_name学生姓名,s_age年龄,s_class班级)成绩表score(sc_id主键ID,s_id学生ID,sc_subject科目,sc_score分数)1.编写SQL语句,查询所有“一班”学生的姓名、年龄、班级信息,结果按年龄升序排列。参考答案:sql

SELECTs_name,s_age,s_class

FROMstudent

WHEREs_class='一班'

ORDERBYs_ageASC;2.编写SQL语句,查询每个学生的姓名、各科平均分,只展示平均分大于80分的学生,按平均分降序排序。参考答案:sql

SELECTs.s_name,AVG(sc.sc_score)ASavg_score

FROMstudents

LEFTJOINscoresc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论