项目类型: 业务理解类 | 展示业务 sense 与数据分析能力 所属公司: 河南九州通医药有限公司 项目时间: 2021 年 8 月 - 2023 年 3 月(持续性工作,约 1.5 年) 项目角色: 数据分析核心执行者

一句话项目概述

针对医药企业快速多变的经营分析需求,建立敏捷的数据服务机制,通过 100+ 个参数化 SQL 脚本库,将非标取数需求的响应时间从 3-5 小时缩短至 1 小时内,累计响应 1000+ 次复杂查询,为中高层管理者提供 T+0 决策数据支持。

项目背景 (Situation)

业务痛点

需求堰塞湖

  • 医药行业政策多变(集采、两票制、DRG 等),业务部门常有突发性、复杂的取数需求
  • 标准报表开发需要排期,通常需要 1-2 周
  • 标准报表无法满足 “T+0” 的敏捷决策需求

数据口径混乱

  • 不同部门对 ” 销售额 ” 定义不一致(发货口径 vs 开票口径)
  • 不同人提取的数据结果不一样,导致 ” 数据打架 ”
  • 业务会议上经常因为数据口径争论不休

业务场景示例

  • 销售总监:” 今天下午 3 点开会,需要分析上个月各区域的毛利率,按客户等级分类 ”
  • 采购经理:” 紧急!需要查出所有库龄超过 6 个月的商品,按供应商汇总 ”
  • 财务总监:” 月底了,需要核查所有负毛利销售单据,看是否有录入错误 “

角色定位

作为 ERP 技术支持工程师,我不仅要解决系统故障,还承担起了 ” 业务数据分析师 ” 的角色,成为业务与数据之间的桥梁。

项目目标 (Task)

核心 KPI

  1. 响应速度: 将复杂非标取数需求的响应时间从3-5 小时缩短至 1 小时内
  2. 数据准确: 建立统一的数据提取标准,消除 ” 数据打架 ” 现象
  3. 能力沉淀: 建立可复用的参数化 SQL 脚本库,覆盖 80% 的常见取数场景
  4. 风险防控: 通过数据监控脚本,主动发现业务误操作和财务风险

个人职责

  • 充当 ” 业务翻译 “,将业务需求转化为 SQL 查询逻辑
  • 编写高质量的 SQL 脚本,确保数据准确性和性能
  • 建立参数化脚本库,实现 ” 输入变量,立等可取 ”
  • 赋能业务人员,培训基础 SQL 查询能力

关键行动 (Action)

阶段一:建立 ” 业务翻译 ” 机制

1. 明确业务需求(最关键的一步)

很多业务人员不懂技术,他们的需求往往很模糊。我的工作是把模糊的业务语言转化为精确的技术语言。

典型对话场景

业务人员:"我要看销售额"
我:"是发货金额还是开票金额?"
业务人员:"开票金额"
我:"含税还是不含税?"
业务人员:"不含税"
我:"包括赠品吗?"
业务人员:"不包括赠品"
我:"时间范围?"
业务人员:"上个月"
我:"按什么维度汇总?客户?区域?还是销售员?"
业务人员:"按区域"

建立需求确认清单

  • 数据范围:时间范围、客户范围、商品范围
  • 统计口径:含税/不含税、是否包括赠品、是否包括退货
  • 汇总维度:按客户、按区域、按商品、按时间
  • 输出格式:Excel、PDF、还是直接屏幕展示

2. 统一数据口径

针对高频的业务指标,制定统一的定义:

  • 销售额: 不含税开票金额,不包括赠品和退货
  • 毛利率: (销售额 - 成本) / 销售额 × 100%
  • 库龄: 当前日期 - 最早入库日期
  • 应收账龄: 当前日期 - 发货日期(未收款部分)

制作《数据口径定义手册》,发给各业务部门,提高沟通效率,避免歧义。

阶段二:SQL 脚本库建设(核心技术资产)

沉淀了 100+ 个常用场景的参数化 SQL 脚本库

1. 销售分析类(15 个脚本)

2. 库存分析类(12 个脚本)

3. 财务风险监控类(10 个脚本)

4. 采购分析类(8 个脚本)

5. 其他分析类(5 个脚本)

阶段三:数据服务流程标准化

建立敏捷响应机制

数据服务流程:
1. 接收需求 → 通过企业微信/钉钉
2. 需求澄清 → 确认数据口径(5分钟)
3. 脚本匹配 → 检索脚本库,是否有现成脚本(5分钟)
4. 快速开发 → 如果没有现成脚本,快速编写(30-50分钟)
5. 数据验证 → 抽查数据合理性,确认无误(5-10分钟)
6. 交付结果 → 导出Excel或截图发送(5分钟)
7. 脚本归档 → 如果是新场景,归档到脚本库

响应时间承诺

  • 已有脚本的需求:15 分钟内交付
  • 需要新开发的需求:1 小时内交付
  • 特别复杂的需求:当天交付

阶段四:赋能业务与知识传递

不仅 ” 授人以鱼 “,更 ” 授人以渔 ”

1. 培训业务骨干

  • 针对财务、采购等部门的业务骨干,培训基础 SQL 查询
  • 教会他们使用脚本库中的参数化脚本
  • 让他们能够自助完成简单的数据查询

2. 编写《SQL 自助手册》

  • 常见查询场景的 SQL 模板
  • 参数替换方法说明
  • 风险提示(如不要执行 DELETE、UPDATE)

3. 建立 ” 数据服务群 ”

  • 在企业微信建立 ” 数据服务群 ”
  • 业务人员在群里提需求
  • 也鼓励懂 SQL 的业务人员互相帮助

量化成果 (Result)

核心成果

  1. 响应速度大幅提升:

    • 累计响应500+ 次复杂数据查询
    • 平均交付时间从3-5 小时缩短至 1 小时内
    • 效率提升约70%
  2. 数据质量提升:

    • 建立统一的数据口径标准
    • 消除了 ” 数据打架 ” 现象
    • 业务会议上因数据争论的情况明显减少
  3. 能力资产沉淀:

    • 建立包含50+ 个参数化脚本的 SQL 脚本库
    • 覆盖80% 的常见取数场景
    • 实现 ” 输入变量,立等可取 ”
  4. 风险主动防控:

    • 通过监控脚本,成功规避多次因业务录入错误导致的潜在财务审计风险
    • 负毛利销售预警帮助财务部门在月结前发现并纠正问题
  5. 业务赋能:

    • 培训了 10+ 名业务骨干掌握基础 SQL 查询
    • 部分简单的取数需求可以由业务人员自助完成

个人价值体现

  • 业务理解深度: 能够将复杂的业务需求转化为 SQL 逻辑,证明深入理解医药行业的业务规则
  • 数据分析能力: 熟练使用 SQL 进行复杂数据分析,能够快速提取有价值的信息
  • 服务意识: “T+0” 响应,为业务决策提供及时的数据支持
  • 知识沉淀: 将临时性工作转化为可复用的资产

技术栈清单

类别具体技术
数据库Oracle Database 11g, PL/SQL
核心技能复杂 SQL 查询(多表关联、子查询、分析函数、窗口函数), 数据分析, 参数化查询
工具PL/SQL Developer, Toad for Oracle, Excel (数据透视表、图表)
业务领域医药行业业务规则, 销售/采购/库存/财务业务流程

面试准备:常见问题与应对

Q1: 你在这个项目中具体做了什么?

回答要点

” 我承担了 ’ 业务数据分析师 ’ 的角色,为中高层管理者提供敏捷的数据服务。主要做了三件事:第一,建立 ’ 业务翻译 ’ 机制,把业务人员模糊的需求转化为精确的 SQL 查询;第二,建立包含 50 多个场景的参数化 SQL 脚本库,覆盖 80% 的常见取数需求;第三,通过监控脚本主动发现业务风险。最终将数据响应时间从 3-5 小时缩短到 1 小时内,累计响应 500 多次查询。“

Q2: 你是如何理解业务需求的?

回答要点

” 理解业务需求是最关键的一步。我的方法是:第一,主动提问,不要想当然。比如业务说 ’ 要销售额 ‘,我会问 ’ 是发货金额还是开票金额?含税还是不含税?包括赠品吗?‘;第二,建立需求确认清单,包括数据范围、统计口径、汇总维度、输出格式;第三,制定《数据口径定义手册》,统一各部门对关键指标的理解。通过这些方法,确保提取的数据准确无误。“

Q3: 给我举个复杂查询的例子

回答要点

” 举个例子,销售总监要求 ’ 分析上个月各区域的毛利率,按客户等级分类,要看到 A 类客户和 B 类客户的毛利率差异 ‘。这个需求涉及 4 张表的关联:销售订单、客户、区域、成本。我需要理解毛利率的计算公式,理解客户等级的定义,然后用 GROUP BY 按区域和客户等级分组,用 SUM 聚合销售额和成本,最后计算毛利率。整个查询大概 30 行 SQL,但逻辑很清晰。“

Q4: 如何保证 SQL 性能?

回答要点

” 医药企业的数据量很大,千万级是常态,SQL 性能很重要。我的优化方法:第一,合理使用索引,确保 WHERE 条件的字段有索引;第二,避免 SELECT *,只查询需要的字段;第三,合理使用分析函数(如 ROW_NUMBER),避免多次嵌套查询;第四,对于特别复杂的查询,先创建临时表,分步处理。通过这些方法,大部分查询能在 5 秒内返回结果。“

Q5: 这个项目对你后续工作有什么帮助?

回答要点

” 这个项目让我深刻理解了 ’ 数据驱动决策 ’ 的价值。后来转岗做基础设施时,我依然沿用这种数据驱动的方法:监控数据分析、容量规划、性能优化,都是基于数据而不是感觉。另外,这段经历让我明白,技术人员不能只懂技术,必须深入理解业务,才能提供真正有价值的服务。“

可能的追问点与应对策略

追问 1: ” 如果业务需求的数据 ERP 里没有怎么办?”

准备答案

  • 先确认是否真的没有:ERP 系统很复杂,可能数据在其他表里
  • 如果确实没有:看是否能通过其他系统获取(如 WMS、TMS)
  • 如果无法获取:向业务解释清楚,建议调整需求或通过其他方式获取
  • 记录这类需求,作为系统改进的输入

追问 2: ” 你编写的 SQL 会不会影响数据库性能?”

准备答案

  • 所有查询都是只读的,不会修改数据
  • 避开业务高峰期执行复杂查询(如选择中午或晚上)
  • 与 DBA 沟通,了解数据库负载情况
  • 对于特别复杂的查询,先在测试环境验证性能

追问 3: ” 如果你提供的数据有错误怎么办?”

准备答案

  • 数据验证机制:交付前抽查数据合理性,如总数是否匹配
  • 业务确认:对于重要的数据,请业务人员抽查确认
  • 可追溯:保留 SQL 脚本和执行时间,方便事后核查
  • 如果发现错误,立即修正并通知相关人员

追问 4: ” 标准报表和你的 SQL 脚本有什么区别?”

准备答案

  • 标准报表:固定格式,开发周期长,但稳定可靠
  • SQL 脚本:灵活敏捷,快速响应,但需要技术支持
  • 我的定位是**” 补充 ” 而不是 ” 替代 ”**
  • 对于高频固定的需求,建议开发成标准报表
  • 对于临时性、多变的需求,用 SQL 脚本更合适

项目亮点提炼(电梯演讲版 -30 秒)

” 在 ERP 运维期间,我承担了 ’ 业务数据分析师 ’ 角色。针对医药行业快速多变的取数需求,我建立了包含 50 多个场景的参数化 SQL 脚本库,将数据响应时间从 3-5 小时缩短到 1 小时内。通过监控脚本主动发现风险,帮助财务部门规避了多次潜在的审计问题。这个项目让我深刻理解了医药行业的业务规则,也培养了数据驱动的工作方式。“

适用场景

推荐在以下情况使用此项目

  • ✅ 应聘需要SQL 能力的岗位(数据分析、运维开发、技术支持)
  • ✅ 岗位 JD 提到业务理解、数据分析、快速响应
  • ✅ 面试官关注服务意识业务 sense
  • ✅ 公司有ERP/SAP 等企业级系统(容易产生共鸣)
  • ✅ 想展示技术 + 业务的复合能力

不推荐在以下情况使用

  • ❌ 纯技术深度岗位(可能觉得 SQL 太基础)
  • ❌ 强调大数据/机器学习的岗位(技术栈不匹配)
  • ❌ 互联网/SaaS 公司(可能觉得 ERP 太传统)

业务理解的体现

这个项目充分展示了对医药行业业务的深度理解:

1. 财务业务:

  • 理解毛利率、应收账款、成本核算等财务概念
  • 理解含税/不含税、发货/开票的差异

2. 销售业务:

  • 理解客户等级(A/B/C 类)、销售区域、销售员绩效
  • 理解赠品、促销、退货等特殊业务场景

3. 采购业务:

  • 理解供应商管理、采购订单、质量检验
  • 理解准时交货率、质量合格率等 KPI

4. 库存业务:

  • 理解库龄、滞销品、先进先出 (FIFO)
  • 理解批次管理、效期管理(医药行业特有)

面试时可以说

” 这个项目让我不仅是技术人员,更是业务专家。我深入理解了医药行业的业务流程、管理指标、风险控制点。这种业务理解能力是我的核心竞争力,也是我能够快速适应新环境的基础。”