(完整版)数据仓库架构师笔试题
数据库笔试题目(答案)

group by t.account
12,给出以下SQL语句优化后的语句:
A:SQL条件语句中的列都建有恰当的索引。 Select * from record where to_char(ActionTime,’yyyymmdd’)=’19991201’
Select * from record where Actiontime=to_date(‘19991201’,’yyyymmdd’)
1, 列举访问oracle的几种方式 Sql*plus Pl/sql Dos下运行sqlplus.exe
2, 列举oracle启动必须的几个服务 OracleServicexxx(SID) OracleOraDb10g_homeTNSListener OracleOraDb10g_homeliSQL*Plus
BEGIN
DATE,
END
DATE,
DEVICENO
NUMBER(5 )
create or replace procedure p_cursor
as
v_id varchar2(25);
v_callerno varchar2(26);
v_calleeno varchar2(26);
v_begin date;
1, 解释冷备份和热备份的不同点以及各自的优点。 热备份针对归档模式的数据库, 在数据库仍旧处于工作状态时进行备份。 而冷备份指在数据库关闭后,进行备份, 适用于所有模式的数据库。热备份的优点在于当备份时, 数据库仍旧可以被使用并且可以将数据库恢复到任意一个时 间点。 冷备份的优点在于它的备份和恢复操作相当简单,并且由于冷备份的数 据库可以工作在非归档模式下, 数据库性能会比归档模式稍好。(因为不必将archive log写入硬盘)
数据库笔试题及答案

数据库笔试题及答案一、选择题1. 数据库管理系统(DBMS)的主要功能是什么?A. 数据存储B. 数据管理C. 数据维护D. 以上都是答案:D2. 关系数据库中的“关系”指的是什么?A. 数据表之间的关系B. 数据库与操作系统之间的关系C. 数据库与应用程序之间的关系D. 数据库与硬件之间的关系答案:A3. SQL语言是什么?A. 结构化查询语言B. 标准查询语言C. 序列查询语言D. 特殊查询语言答案:A二、填空题4. 数据库设计中的_______范式(NF)是最高的规范化形式,可以消除所有的数据冗余。
答案:第五5. 在SQL中,用于删除表中数据的命令是_______。
答案:DELETE三、简答题6. 简述数据库事务的ACID属性。
答案:数据库事务的ACID属性包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。
原子性意味着事务中的所有操作要么全部完成,要么全部不完成;一致性确保事务执行后数据库从一个一致的状态转移到另一个一致的状态;隔离性保证并发执行的事务之间不会互相影响;持久性确保一旦事务完成,其结果将永久保存在数据库中。
7. 什么是数据库的索引?它有什么作用?答案:数据库的索引是一种特殊的数据库对象,用于优化查询性能。
索引可以快速定位到表中的特定数据,减少查询时需要扫描的数据量,从而提高查询效率。
四、计算题8. 假设有一个学生表Students,包含字段:学号(ID),姓名(Name),年龄(Age),专业(Major)。
编写一个SQL查询语句,列出所有年龄大于20岁的学生姓名和专业。
答案:```sqlSELECT Name, MajorFROM StudentsWHERE Age > 20;```9. 如果要删除Students表中所有年龄小于18岁的学生记录,应该使用哪个SQL命令?答案:```sqlDELETE FROM StudentsWHERE Age < 18;```五、论述题10. 论述数据库备份和恢复的重要性,并简述常见的备份和恢复策略。
数据库系统工程师招聘笔试题及解答(某大型国企)

招聘数据库系统工程师笔试题及解答(某大型国企)一、单项选择题(本大题有10小题,每小题2分,共20分)1、在关系数据库中,用来表示实体间联系的是:A. 属性B. 二维表C. 网状结构D. 树状结构答案:B. 二维表解析:在关系模型中,数据的逻辑结构是一张二维表,它由行和列组成。
每一行代表一个元组(实体),每一列表示一个属性(实体的一个特征)。
因此,在关系数据库中,实体间的联系是通过这些二维表来表示的。
2、下列关于事务的描述中,错误的是:A. 事务是数据库进行的基本工作单位B. 如果一个事务执行成功,则全部更新提交C. 如果一个事务执行失败,则已做过的更新被恢复原状D. 事务中的操作可以部分完成答案:D. 事务中的操作可以部分完成解析:事务是数据库管理系统执行过程中的一个逻辑单元,由有限个数据库操作组成。
事务应该满足ACID原则,即原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。
其中原子性要求事务中的所有操作要么全部完成,要么全部不完成,因此事务中的操作不可以部分完成。
3、在数据库系统中,用来定义和描述数据库全局逻辑结构的是( )A. 数据字典B. 外模式C. 概念模式D. 内模式答案:C解析:在数据库的三级模式结构中,概念模式(Conceptual Schema)也称为逻辑模式,它定义了数据库中所有数据的整体逻辑结构,包括数据的组织、数据的联系、数据的完整性、安全性要求等,是数据库系统中全局数据逻辑结构的描述,是全体用户(包括应用程序员和最终用户)的公共数据视图。
数据字典(Data Dictionary)是对数据库系统中所有对象及其相互关系的描述和存储的集合,它包含了数据库中所有的元数据,但不直接定义数据的逻辑结构。
外模式(External Schema)也称为子模式或用户模式,它是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图。
架构师笔试题

架构师笔试题
架构师的笔试题通常涵盖广泛的主题,包括软件架构、系统设计、编程语言、数据库管理、性能优化等。
以下是一些可能出现在架构师笔试中的题目示例:系统设计与架构:
描述一个分布式系统的设计原则和挑战。
如何选择合适的架构模式,例如微服务架构、单体架构等。
编程语言和编码:
在你最熟悉的编程语言中,解释什么是闭包,它的优点和在系统设计中的应用。
用伪代码或你熟悉的编程语言编写一个多线程应用的简单示例。
数据库设计与管理:
解释数据库索引的作用和优化查询性能的方法。
如何设计一个支持高并发的数据库架构。
性能优化:
介绍一些常见的性能优化技术,尤其是在大规模系统中的应用。
怎样识别和解决系统中的性能瓶颈。
安全性与隐私:
描述一些常见的网络安全威胁,以及如何在系统设计中考虑安全性。
数据隐私是如何在系统设计中得到保护的?
云架构:
解释云架构的优势,并提到一些常见的云服务提供商。
如何设计一个在云中可扩展和高可用的应用程序。
项目管理与沟通:
在架构设计中,沟通和协作的重要性是什么?
如何在团队中有效地传达和解释你的架构设计。
新技术趋势:
探讨当前软件开发和架构设计中的一些新技术趋势,例如边缘计算、区块链等。
数据仓库架构与建模考试

数据仓库架构与建模考试(答案见尾页)一、选择题1. 数据仓库的架构通常分为哪几个层次?A. 持久层B. 逻辑层C. 物理层D. 应用层2. 在数据仓库中,以下哪个不是常用的数据建模工具?A. Erwin Data ModelerB. IBM Data ArchitectC. Microsoft VisioD. Oracle SQL Developer3. 在数据仓库中,以下哪个不是维度表的特点?A. 通常包含事实表中的度量值B. 包含描述性信息C. 通常是静态的D. 用于支持复杂的查询分析4. 在数据仓库中,以下哪种类型的建模技术最适合于分析型应用?A. 星型模型B. 事实星座模型C. 雪花模型D. 星型雪花模型5. 在数据仓库中,以下哪个不是ETL(提取、转换、加载)过程中的步骤?A. 提取B. 清洗C. 转换D. 压缩6. 在数据仓库中,以下哪个是维度表的设计原则?A. 尽可能少地包含数据B. 尽可能多地包含数据C. 保持数据冗余D. 保持数据一致性7. 在数据仓库中,以下哪个是事实表的设计原则?A. 尽可能少地包含数据B. 尽可能多地包含数据C. 保持数据冗余D. 保持数据一致性8. 在数据仓库中,以下哪个是雪花模型与星型模型的主要区别?A. 维度表的分布方式B. 事实表的分布方式C. 星型模型的中心化程度D. 雪花模型的规范化程度9. 在数据仓库中,以下哪个是主键与外键的主要区别?A. 主键用于唯一标识记录,外键用于建立表之间的关系B. 主键用于建立表之间的关系,外键用于唯一标识记录C. 主键和外键都用于唯一标识记录D. 主键和外键都用于建立表之间的关系10. 在数据仓库中,以下哪个是数据治理的主要目标?A. 确保数据的质量和准确性B. 提高数据处理的效率C. 减少数据冗余和不一致性D. 优化数据存储和备份策略11. 数据仓库的主要目的是什么?A. 存储原始数据B. 提供数据分析和报告功能C. 用于数据挖掘和机器学习D. 所有以上选项12. 在设计数据仓库时,以下哪个层次结构最适合存储历史数据?A. 事实层B. 维度层C. 汇总层D. 应用层13. 在数据仓库中,以下哪个术语描述了用于分析数据的模式?A. 实体B. 属性C. 关系D. 记录14. 在数据仓库中,以下哪个工具不是用于数据分析和报告的?A. 查询语言(如SQL)B. 数据可视化工具C. 数据仓库建模工具D. 数据库管理系统(DBMS)15. 在数据仓库中,以下哪个维度通常与客户相关?A. 时间B. 市场细分C. 产品D. 销售渠道16. 在数据仓库中,以下哪个过程不是数据仓库生命周期的一部分?A. 数据抽取B. 数据清洗C. 数据转换D. 数据删除17. 在数据仓库中,以下哪个步骤不是数据建模过程中的步骤?A. 概念设计B. 逻辑设计C. 物理设计D. 数据加载18. 在数据仓库中,以下哪个技术用于将多个表中的数据组合成一个视图?A. 连接B. 视图C. 索引D. 分区19. 在数据仓库中,以下哪个策略用于确保数据的质量和准确性?A. 数据验证B. 数据清理C. 数据备份D. 数据归档20. 在数据仓库中,以下哪个指标是用于衡量数据仓库性能的?A. 查询响应时间B. 数据存储容量C. 数据传输速度D. 计算资源利用率21. 在数据仓库中,以下哪个层次的结构是从下到上逐渐抽象的?A. 事实层、维度层、业务层B. 业务层、维度层、事实层C. 维度层、事实层、业务层D. 业务层、事实层、维度层22. 在数据仓库的建模过程中,以下哪个术语描述了事实表中的关键属性?A. 主键B. 外键C. 代理键D. 候选键23. 在维度建模中,以下哪个维度通常包含时间信息?A. 时间维B. 地点维C. 产品维D. 客户维24. 在构建数据仓库时,以下哪项不是常用的ETL(抽取、转换、加载)工具?A. Informatica PowerCenterB. Microsoft SQL Server Integration Services (SSIS)C. Apache NiFiD. Oracle Data Integrator25. 在数据仓库中,以下哪种类型的查询通常涉及复杂的聚合和计算?A. 交互式查询B. 批量查询C. 连续查询D. 以上都不是26. 在维度建模中,以下哪个步骤不是必要的?A. 概念设计B. 逻辑模型设计C. 物理模型设计D. 数据仓库实施27. 在数据仓库中,以下哪个选项是维度表的设计原则?A. 尽可能少地包含属性B. 尽可能多地包含属性C. 属性必须是可量化的D. 属性可以是非量化或半量化的28. 在数据仓库中,以下哪个工具通常用于验证数据质量和完整性?A. 数据清洗工具B. 数据验证工具C. 数据转换工具D. 数据存储工具29. 在数据仓库中,以下哪个层次是用于存储实际数据的?A. 物理层B. 逻辑层C. 事实层D. 业务层30. 在数据仓库中,事实表通常包含哪些关键字段?A. 序列号B. 日期/时间戳C. 统计指标(如销售额)D. 实体键31. 以下哪个选项不是数据仓库的分层架构的一部分?A. 物理层B. 服务层C. 汇总层D. 逻辑层32. 在数据仓库建模中,常用的粒度级别有哪些?A. 业务单元B. 细粒度C. 中粒度D. 宽粒度33. 下列哪种类型的数据库常用于数据仓库中?A. 关系型数据库B. 非关系型数据库C. 图数据库D. 列存储数据库34. 在数据仓库中,星型模型和雪花模型有哪些主要区别?A. 星型模型的维度通常直接连接到事实表B. 雪花模型通过多个事实表和维度表进行建模C. 星型模型的维度和事实表是物理上分离的D. 雪花模型更适用于大数据集35. 在数据仓库设计中,平衡事实和维度的重要性意味着什么?A. 确保维度数据的质量和完整性B. 减少事实表中的记录数量C. 平衡查询性能和数据冗余D. 优化数据仓库的扩展性36. 数据仓库中的ETL过程是指什么?A. 数据提取B. 数据转换C. 数据加载D. 数据集成37. 在数据仓库中,索引的主要作用是什么?A. 提高查询性能B. 增加数据冗余C. 降低数据完整性D. 减少数据量38. 在数据仓库中,事实表通常包含哪些维度?A. 时间B. 地点C. 产品39. 数据仓库中的维度表通常包含哪些属性?A. 属性值B. 维度描述C. 维度关键字D. 以上都是40. 在数据仓库中,星型模型和雪花模型有什么区别?A. 星型模型的维度表不包含聚合B. 雪花模型可以减少数据冗余C. 星型模型的事实表包含聚合D. 雪花模型更容易理解41. 在数据仓库中,哪个层次的结构包含了业务需求和数据需求?A. 企业级数据仓库B. 数据集市C. 物理数据仓库D. 以上都不是42. 在数据仓库中,如何确保数据的准确性和完整性?A. 使用主键和外键约束B. 进行数据验证和清洗C. 实施数据备份和恢复策略D. 以上都是43. 数据仓库中的数据冗余是如何产生的?A. 数据在多个地方重复存储B. 数据在不同系统间传输C. 数据从源头处就不一致D. 数据在进行聚合操作时产生44. 在数据仓库中,如何优化查询性能?B. 改变数据分区方式C. 使用更复杂的查询语句D. 以上都是45. 在数据仓库中,如何进行数据安全和隐私保护?A. 加密敏感数据B. 设置严格的访问权限C. 使用数据脱敏技术D. 以上都是二、问答题1. 什么是数据仓库?请简述其核心特点。
数据库笔试题(附带带答案)

数据库笔试题(附带带答案)1. 什么是数据库?答:数据库是指按照数据模型组织、存储和管理数据的集合。
它是计算机系统中的一种有效数据管理方式,可以用于存储和组织大量结构化数据,并提供数据查询、插入、删除和更新等操作。
2. 数据库的优点是什么?答:数据库的优点主要包括:- 数据共享:不同用户可以共享数据库中的数据,减少数据冗余与数据不一致的问题。
- 数据一致性:数据库保证数据的完整性和一致性,通过事务管理机制来保证数据的正确性。
- 数据安全性:数据库提供权限控制机制,可以限制用户对数据的访问权限,保护数据的安全。
- 数据持久性:数据库通过数据持久化的方式将数据存储在磁盘中,确保数据的长期保存。
- 数据的高效访问:数据库提供高效的数据访问方式,可以通过索引等机制快速定位和访问数据。
3. 数据库的三大范式是什么?答:- 第一范式(1NF):要求每个属性的值都是原子的,不可再分。
即每个字段的值都是单一值,不可再分解为其他属性。
- 第二范式(2NF):在满足1NF的基础上,要求非主键字段依赖于全部主键,而不是部分主键。
即非主键字段必须完全依赖于主键。
- 第三范式(3NF):在满足2NF的基础上,要求非主键字段之间没有传递依赖关系。
即非主键字段之间不能互相依赖。
4. 什么是索引?答:索引是数据库中的一种数据结构,用于加快数据的检索速度。
索引通过在数据表中创建一个列的索引,可以快速定位到符合某种条件的记录。
索引可以提高数据的查询速度,但同时会增加数据的插入、更新和删除操作的时间开销。
5. 数据库的事务是什么?答:事务是数据库管理系统执行的一个逻辑操作单元,是由一组数据库操作语句组成的序列。
事务具有以下特性,通常由ACID 来描述:- 原子性(Atomicity):事务中的所有操作要么全部成功,要么全部失败回滚,保证数据库的一致性。
- 一致性(Consistency):事务在执行前后,数据库的完整性约束没有被破坏。
数据库笔试题及答案

数据库笔试题及答案1. 什么是数据库事务?数据库事务是一组不可分割的操作序列,这些操作要么全部成功,要么全部失败。
事务具有以下四个基本特性,通常称为ACID特性:- 原子性(Atomicity):事务中的所有操作要么全部完成,要么全部不完成,不会结束在中间某个点。
- 一致性(Consistency):事务必须使数据库从一个一致性状态转换到另一个一致性状态。
- 隔离性(Isolation):多个事务并发执行时,它们之间的操作不会相互干扰。
- 持久性(Durability):一旦事务提交,则其所做的修改会永久保存在数据库中,即使系统发生故障也不会丢失。
2. 请解释主键(Primary Key)和外键(Foreign Key)的区别。
- 主键(Primary Key):表中用于唯一标识一条记录的字段或字段组合。
一个表只能有一个主键,且主键的值不能为NULL。
- 外键(Foreign Key):一个表中的字段或字段组合,它在另一个表中作为主键。
外键用于建立两个表之间的关系,确保数据的引用完整性。
3. 什么是数据库规范化(Normalization)?数据库规范化是数据库设计过程中用于减少数据冗余和依赖的一种方法。
规范化通过分解表来实现,目的是减少数据冗余,提高数据完整性。
规范化分为以下几个级别:- 第一范式(1NF):每个字段都是不可分割的基本数据项。
- 第二范式(2NF):在1NF的基础上,非主属性完全依赖于主键。
- 第三范式(3NF):在2NF的基础上,非主属性不依赖于其他非主属性。
- BCNF(Boyce-Codd Normal Form):在3NF的基础上,任何非主属性不传递依赖于候选键。
4. 什么是索引?索引有哪些类型?索引是数据库中用于提高查询效率的数据结构。
索引可以快速定位到表中的数据,减少查询所需的时间。
索引的类型包括:- B树索引:最常见的索引类型,适用于全值匹配、范围查询、前缀匹配等。
数据库系统工程师招聘笔试题与参考答案(某大型央企)

招聘数据库系统工程师笔试题与参考答案(某大型央企)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、题干:数据库系统工程师在设计和实施数据库时,通常需要遵循以下哪种原则?A. 数据冗余最小化B. 数据独立性强C. 数据完整性优先D. 数据访问速度快2、题干:以下哪种数据库模型被认为是第三范式(3NF)?A. 第一范式(1NF)B. 第二范式(2NF)C. 第三范式(3NF)D. 第四范式(4NF)3、在关系型数据库管理系统中,关系模型的三个组成部分不包括:A. 数据结构B. 数据操作C. 数据完整性约束D. 数据查询语言 (DQL)4、在SQL语言中,外键(FOREIGN KEY)的作用是什么?A. 确保列中的值唯一B. 检查指定列是否为空C. 建立表间的关系,确保引用完整性D. 对输入的数据进行格式检查5、题干:在数据库系统中,用于存储和表示数据的最小单位是:A. 字段B. 记录C. 数据库D. 数据表6、题干:以下哪种数据库模型属于层次模型?A. 层次模型B. 网状模型C. 关系模型D. 物化模型7、在关系型数据库管理系统中,关于规范化理论的说法正确的是:A. 规范化可以消除数据冗余和更新异常。
B. 第一范式(1NF)要求属性之间互不依赖。
C. 第二范式(2NF)要求非主键字段完全依赖于主键字段。
D. 第三范式(3NF)要求所有非主键字段直接依赖于主键字段,并且消除传递依赖。
8、下列SQL语句中,哪一项用于创建数据库表?A. CREATE DATABASE 表名;B. CREATE TABLE 表名 (列定义);C. INSERT INTO 表名 VALUES (值列表);D. SELECT * FROM 表名;9、在SQL语言中,哪个命令用来插入一条记录?A. INSERTB. UPDATEC. DELETED. SELECT二、多项选择题(本大题有10小题,每小题4分,共40分)1、以下哪些是数据库系统工程师在设计和优化数据库时需要考虑的性能优化策略?()A、索引优化B、查询优化C、数据分区D、存储优化E、事务隔离级别调整2、在数据库设计中,以下哪些原则有助于提高数据库的稳定性和可维护性?()A、规范化设计B、最小化冗余C、数据一致性D、用户界面友好E、易于扩展3、在SQL语言中,关于事务处理的说法下列正确的是:A. 可以使用BEGIN TRANSACTION来显式开始一个事务B. 提交事务使用COMMIT命令,这使得所有未决的更改成为永久更改C. ROLLBACK命令用来取消从BEGIN TRANSACTION以来所做的所有更改D. 如果应用程序没有显式地开始一个事务,那么每次自动开始一个新的事务E. 每个SQL语句自动开始一个新的事务4、关于索引(index)的说法哪些是错误的?A. 创建索引能提高表数据检索的速度B. 当在一个表上执行INSERT、UPDATE和DELETE操作时,索引会降低这些操作的性能C. 每个索引都占用物理存储空间D. 索引可以加快ORDER BY和GROUP BY子句的执行速度E. 索引一旦创建,就由数据库系统自动使用和维护,对用户透明5、以下哪些技术或工具通常用于数据库性能优化?A. 索引优化B. 查询优化器C. 数据库分区D. 硬件升级E. 使用缓存6、以下哪些情况会导致数据库事务失败?A. 违反了隔离性原则B. 违反了持久性原则C. 违反了一致性原则D. 违反了原子性原则E. 违反了并发控制原则7、在SQL语言中,关于视图的描述正确的是:A. 视图可以像表一样使用,在查询时可以插入、删除和修改数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据仓库架构师笔试题
1、请简述下什么缓慢变化维,以及通过设计怎样解决缓慢变化维的问题。
参考答案:这道题是数据仓库的基础知识题,能答对答全的基本可确定对方有一定的数据仓库开发和设计经验。
1)
2、请简述下数据仓库一般有哪两种设计模式,以及这两种设计模式的优缺点。
参考答案:这题属于简单的基础知识题。
其解题思路如下:
1)能准确说出雪花模型和星型模型这两个模型的,算及格。
2)能描述出雪花模型和星形模型分别是怎样一种模型,比如星型模型是维度与事实表直接关联,不存在多层维度的结构,而雪花模型层了维度表保持三范
式或准三范式设计外其它与星形模型一样的,最好能用图例画出来的,得90
分。
3)能够说出雪花模型和星形模型的优缺点的,其中星形模型减少了关联,用空间换时间,性能更优,雪花模型结构更清晰,维护更方便,但性能差一些。
通常的数据仓库建设都是两者的混合模式存在。
得满分。
3、请简述下自己做过的项目中用过那些实体,以及各实体间的关系,并将实体中的一些核
心属性列出来。
参考参考:这道题没有标准答案,根据各自项目的情况有不同答案,首先面试者必须将项目中的关键实体、实体属性,以及实体间的关系描述出来。
另外可以通过对方的描述,了解对方在对所做项目的了解程度,在项目中承担的角色和作用,以及对方的语言沟通能力。
4、7、请简述下在实体关系是1对1,1对多,多对多的情况下,怎么去设计表来记录两
个实体之间的关系,可举例说明。
参考答案:本题算是一道相对简单的设计基础题,如果这题答不出来,基本确定没什么数据库设计经验,并且作为开发人员对数据库结构的了解也是很有限的。
解题思路如下:1)1对1关系可以将其中一个表的主键带到另一个表中,以便于关联查询。
2)1对多关系只能将前者的主键带在后者的表中,不能反过来。
比如学校和班级表,只能表学校的标识放在班级表中,而不能反过来。
3)多对多关系则必须在两者之间额外创建一张中间表(一般叫交叉表),这个答案才是最关键的答案,没答对这个,基本可以判定不及格。
5、请简述下数据库(以Oracle为例)有哪几种常见的Join方式,并简要描述各种Join
方式用在哪种场景下会比较适合?
6、请简要描述下数据库(以Oracle为例)有哪几种常见的索引,并说明每种索引的优缺
点。
7、假设现在有一个社保缴费清单表A(社保号,参保单位编号,缴费月份),缴费清单保
存个人历史所有参数记录。
请用一个SQL(可使用伪代码)统计出每个参保人(以社保号标识一个人)在每段工作经历(以缴纳社保为准)的最早缴社保月份、最近缴社保月份,
以及缴纳月份数。
参考答案:这题是一道比较复杂的题,即考验了一个人的理解能力,也考验了实
际开发能力。
具体解题思路和计分情况如下:
4)此题如果如果知道通过社保号、参保单位编号作为分析函数的分组键,然后取最大月份,最小月份,算30分。
5)如果能了解到一个人可能对某家公司有多次进出的情况。
算及格。
6)如果能分清楚直接用在某家企业最大缴纳月份减去最小缴纳月份取月份数存在可能性错误的,可得80分。
7)如果能通过缴纳月份减去以社保号、参保单位作为分组,以缴纳月份排序生成的序号来作为每次工作经历的分组基数,再通过该分组基础取最大月份和
最小月份之差得出结果的,以满分计。
如果能通过其它更复杂的思路得出结
果,可算90分。
8、假设现在有一张日志表(日志流水号,程序名,开始时间,结束时间,运行状态),目
前日志流水号是主键,程序名和运行状态这两个字段上建了普通索引,请用一个SQL 求出最近某个程序的最近成功运行时间。
假设总共只有10个程序在运行,但每过3秒运行一次,使得运行的日志越来越大,那以上面的SQL性能是否已经出现问题?如果出现问题,请在不删除日志记录的情况下,怎么去优化这个过程。
参考答案:这首题算中等复杂难度。
解决思路及计分情况如下:
1)能知道当前性能的瓶颈使用当前索引根本无法解决的,算及格。
2)能通过将日志表按天分区按小时子分区存储日志,然后尽量从最近分区向早期分区递进查询的,算80分。
3)能想出重新创建一张表,通过程序控制只保存最近成功日志,则可得满分。