版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2025年数据库sql考试试题及答案一、单项选择题(每题2分,共20分)1.以下关于SQL约束的描述中,错误的是()A.PRIMARYKEY约束自动创建唯一索引B.UNIQUE约束允许列值为NULL(除非显式禁止)C.CHECK约束可以引用其他表的列D.FOREIGNKEY约束用于维护表间数据一致性2.执行以下SQL语句后,emp表中受影响的行数是()DELETEFROMempWHEREsalary<(SELECTAVG(salary)FROMemp);A.所有薪资低于平均薪资的记录B.所有薪资等于平均薪资的记录C.所有薪资高于平均薪资的记录D.无法确定,需根据实际数据计算3.若要查询订单表中每个客户的最近3笔订单(按订单时间降序),最适合使用的SQL特性是()A.GROUPBYB.HAVINGC.窗口函数(ROW_NUMBER())D.子查询4.以下关于索引的说法,正确的是()A.聚集索引会改变表中数据的物理存储顺序B.非聚集索引的叶节点存储的是数据行的完整记录C.为经常更新的列创建索引可以提升性能D.索引越多,查询性能一定越好5.执行SELECTFROMALEFTJOINBONA.id=B.idWHEREB.name='张三',返回的结果是()A.A表的所有记录,且B表中name为'张三'的匹配记录B.A表中与B表name为'张三'的记录匹配的部分,以及A表无匹配的记录C.A表中与B表name为'张三'的记录匹配的部分,A表无匹配的记录不会显示D.B表中name为'张三'的记录,以及A表无匹配的记录6.事务的原子性(Atomicity)是指()A.事务一旦提交,其结果永久保存B.事务执行过程中不受其他事务干扰C.事务中的操作要么全部完成,要么全部不完成D.事务处理的数据满足数据库的完整性约束7.以下SQL语句中,语法正确的是()A.SELECTdept_id,AVG(salary)ASavg_salFROMempGROUPBYdept_idHAVINGavg_sal>5000;B.SELECTdept_id,COUNT()ASemp_countFROMempWHEREemp_count>3GROUPBYdept_id;C.SELECTname,SUM(score)OVER(PARTITIONBYclass)FROMstudent;D.INSERTINTOuser(id,name)VALUES(1,'张三'),(2,'李四')ONCONFLICT(id)UPDATEname=EXCLUDED.name;8.若要将员工表中所有部门ID为D001的员工薪资增加10%,正确的SQL语句是()A.UPDATEempSETsalary=salary1.1WHEREdept_id='D001';B.ALTERTABLEempMODIFYsalary=salary1.1WHEREdept_id='D001';C.UPDATEempADDsalary=salary1.1WHEREdept_id='D001';D.SETemp.salary=emp.salary1.1WHEREdept_id='D001';9.以下关于视图的描述,错误的是()A.视图是虚拟表,不存储实际数据B.对视图的更新操作可能受到基表约束的限制C.视图可以简化复杂查询D.视图必须基于单张基表创建10.在数据库优化中,以下哪项操作通常不会提升查询性能()A.为WHERE子句中的过滤列创建索引B.减少SELECT子句中不必要的列C.将大表拆分为多个小表(分表)D.在事务中频繁执行锁表操作二、填空题(每空2分,共10分)1.若要创建一个学生表(student),包含学号(s_id,主键,CHAR(10))、姓名(s_name,VARCHAR(20),非空)、入学时间(enroll_date,DATE),SQL语句为:CREATETABLEstudent(s_idCHAR(10)PRIMARYKEY,s_nameVARCHAR(20)______,enroll_dateDATE);2.查询成绩表(score)中,课程ID为C001且成绩大于80分的学生学号,按成绩降序排列:SELECTs_idFROMscore______course_id='C001'ANDscore>80ORDERBYscore______;3.使用窗口函数计算每个班级(class)学生的数学成绩排名(分数相同则并列),排名列名为math_rank:SELECTs_id,math_score,______(ORDERBYmath_scoreDESC)OVER(PARTITIONBYclass)ASmath_rankFROMstudent;4.向部门表(dept)中插入一条记录,部门ID为D005,部门名称为“研发二部”:INSERTINTOdept(dept_id,dept_name)______('D005','研发二部');5.事务中若需要回滚到某个保存点,使用的SQL语句是:______TOSAVEPOINTsp1;三、简答题(每题10分,共30分)1.简述索引的作用及常见类型(至少列举3种)。2.说明内连接(INNERJOIN)与左外连接(LEFTJOIN)的区别,并举例说明。3.什么是事务的隔离级别?列举SQL标准中的4种隔离级别,并说明“脏读”发生在哪个级别。四、综合题(每题20分,共40分)1.某电商数据库包含以下表结构:用户表(user):user_id(主键,INT)、user_name(VARCHAR(50))、reg_time(DATETIME)订单表(order):order_id(主键,INT)、user_id(INT,外键)、order_time(DATETIME)、total_amount(DECIMAL(10,2))订单详情表(order_item):item_id(主键,INT)、order_id(INT,外键)、product_id(INT)、quantity(INT)、price(DECIMAL(10,2))要求:(1)查询2024年注册的用户中,订单总金额超过5000元的用户姓名及总金额(需关联用户表和订单表)。(2)查询每个订单中单价(price)最高的商品信息(需显示订单ID、商品ID、最高单价)。2.某医院数据库有患者表(patient)和就诊记录表(visit),表结构如下:patient:p_id(主键,INT)、p_name(VARCHAR(20))、gender(CHAR(1))、birth_date(DATE)visit:visit_id(主键,INT)、p_id(INT,外键)、visit_date(DATE)、department(VARCHAR(30))、cost(DECIMAL(10,2))要求:(1)计算2024年每个季度(Q1:1-3月,Q2:4-6月,Q3:7-9月,Q4:10-12月)各科室的总就诊费用。(2)为提高“查询2024年就诊次数超过3次的患者姓名及就诊次数”的查询效率,提出索引优化建议,并说明理由。答案一、单项选择题1.C2.D3.C4.A5.C6.C7.C8.A9.D10.D二、填空题1.NOTNULL2.WHERE;DESC3.DENSE_RANK4.VALUES5.ROLLBACK三、简答题1.索引的作用是加速数据查询,减少全表扫描的I/O消耗。常见类型包括:聚集索引:决定表中数据的物理存储顺序,一个表只能有一个聚集索引(如SQLServer的CLUSTEREDINDEX)。非聚集索引:叶节点存储索引键值和行定位器(如指针或行号),一个表可创建多个非聚集索引。唯一索引:确保索引列的值唯一(如UNIQUEINDEX),可用于实现UNIQUE约束。复合索引:基于多列创建(如INDEXidx_dept_salONemp(dept_id,salary)),适用于多列查询条件。2.内连接(INNERJOIN)仅返回两表中满足连接条件的匹配行;左外连接(LEFTJOIN)返回左表的所有行,右表中无匹配的行用NULL填充。示例:表A(id:1,2,3),表B(id:2,3,4),连接条件A.id=B.id。内连接结果:id=2,3;左外连接结果:id=1(B表字段NULL)、2、3。3.事务隔离级别定义了事务间可见性的规则。SQL标准中的4种隔离级别为:读未提交(READUNCOMMITTED):允许读取其他事务未提交的修改。读已提交(READCOMMITTED):仅读取已提交的事务修改(默认级别)。可重复读(REPEATABLEREAD):同一事务内多次读取同一数据结果一致。串行化(SERIALIZABLE):最高隔离级别,事务串行执行,无并发问题。“脏读”发生在“读未提交”级别,即一个事务读取了另一个事务未提交的中间数据。四、综合题1.(1)SELECTu.user_name,SUM(o.total_amount)AStotalFROMuseruJOINorderoONu.user_id=o.user_idWHEREYEAR(u.reg_time)=2024GROUPBYu.user_id,u.user_nameHAVINGSUM(o.total_amount)>5000;(2)WITHranked_itemsAS(SELECTorder_id,product_id,price,ROW_NUMBER()OVER(PARTITIONBYorder_idORDERBYpriceDESC)ASrankFROMorder_item)SELECTorder_id,product_id,priceASmax_priceFROMranked_itemsWHERErank=1;2.(1)SELECTCASEWHENMONTH(v.visit_date)BETWEEN1AND3THEN'Q1'WHENMONTH(v.visit_date)BETWEEN4AND6THEN'Q2'WHENMONTH(v.visit_date)BETWEEN7AND9THEN'Q3'ELSE'Q4'ENDASquarter,v.department,SUM(v.cost)AStotal_costFROMvisitvWHEREYEAR(v.visi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 绞车操作工岗前创新实践考核试卷含答案
- 采煤支护工冲突解决考核试卷含答案
- 半导体芯片制造工道德考核试卷含答案
- 物业管理师发展趋势测试考核试卷含答案
- 道路客运站务员岗前基础晋升考核试卷含答案
- 汽车维修工安全综合知识考核试卷含答案
- 矿压观测工岗前基础实战考核试卷含答案
- 板带箔材精整工岗前安全意识强化考核试卷含答案
- 司泵工岗前安全检查考核试卷含答案
- 2024年饶平县事业单位联考招聘考试真题汇编附答案
- 2025年敖汉旗就业服务中心招聘第一批公益性岗位人员的112人模拟试卷含答案详解
- 婚姻家庭继承实务讲座
- 湖南省长沙市中学雅培粹中学2026届中考一模语文试题含解析
- 新内瘘穿刺护理
- 钳工个人实习总结
- 大健康养肝护肝针专题课件
- 道路高程测量成果记录表-自动计算
- 关于医院“十五五”发展规划(2026-2030)
- DB31-T 1587-2025 城市轨道交通智能化运营技术规范
- 医疗护理操作评分细则
- 自考-经济思想史知识点大全
评论
0/150
提交评论