Topic Guide

SQL / Data 面试辅助:窗口函数、指标口径和数据建模

面向 DS / DE 候选人的 SQL 和数据面试准备,覆盖多表 JOIN、窗口函数、留存、漏斗、归因、实验指标和 pipeline 设计,附高频题练习路线。

Drills

这一类题型先练什么

先把训练动作具体化,再去看文章和公司攻略,否则容易停留在概念层。

训练 01

SQL:D7 Retention

给定 users(user_id, signup_date) 和 events(user_id, event_time, event_type),计算每天注册用户的 D1 / D7 retention。需要处理重复事件、时区和当天注册当天活跃。

参考思路

  • 先定义 cohort:按 signup_date 还是用户所在时区的 local date。
  • 先把 events 去重到 user_id + active_date 粒度,再和 users 做 join。
  • 用 conditional aggregation 计算 D1 / D7 分子,cohort size 做分母。
  • 说明 late event 到达后是否重算历史 cohort,以及 dashboard 如何标记数据未完成。

面试官主要看:业务口径、去重、时间窗口、NULL 和 late event,而不只是 SQL 语法。

训练 02

Experiment:Checkout 改版

产品团队想改 checkout 页面,希望提升转化率。请设计 A/B test,包括 primary metric、guardrail、sample size、bias 和 rollout。

参考思路

  • 先定义用户、随机化单位、实验窗口和触发条件,避免污染样本。
  • Primary metric 用 checkout completion / purchase conversion,guardrail 看退款、支付失败、延迟和用户投诉。
  • 讨论 sample size、power、MDE,以及提前停止会带来的风险。
  • 上线采用 ramp:1%、5%、25%、50%、100%,每阶段看 guardrail。

面试官主要看:是否能从产品目标走到实验设计和风险控制,而不是只说看转化率。

训练 03

DE Pipeline:CDC 到 Metrics Layer

设计从 OLTP orders 数据库到 warehouse metrics layer 的 pipeline,要求支持 insert / update / delete、回填、schema evolution 和数据质量监控。

参考思路

  • 链路拆成 CDC capture、raw log、staging dedup、mart model、metrics layer。
  • 用 primary key + event version / updated_at 处理 update 和 delete,保证幂等。
  • 回填要隔离历史任务和线上任务,写入前做质量检查和口径版本标记。
  • 监控 freshness、volume、null rate、duplicate rate、referential integrity 和 SLA。

面试官主要看:是否理解数据可靠性、幂等、回填、schema 演进和消费方契约。

Audience

适合谁

适合 DS、DE、Analytics Engineer 候选人。

SQL DrillMetric DesignExperimentData ModelingPipeline Debug

Deep Links

继续深入看这些内容

每个题型页都连接到可继续阅读的博客、可直接使用的资源模板、相关公司攻略和岗位路线。

Why It Matters

为什么这一类题型会影响面试评价

题型页的目标不是罗列概念,而是帮助候选人理解面试官在这一轮真正观察什么: 你是否能澄清问题、组织结构、处理边界、解释取舍,并在压力下保持可复盘的沟通节奏。

评价信号

面试官听到的是推理过程,不只是最终答案

每个模块都需要能讲清前置假设、选择依据、失败路径和复杂度,才能避免“会做但讲不稳”。

训练产出

每次练习都应该留下可复用的复盘材料

建议记录题型、卡点、错误原因、边界测试、follow-up 版本和下一次训练重点。

临场目标

把不确定题目变成有结构的推进过程

真正的冲刺价值,是让候选人遇到变体时仍能稳定澄清、拆解、实现和复盘。

Common Risks

常见失分风险

先识别风险,再决定训练顺序。

风险

SQL 会写单题,但业务口径一变就乱。

风险

不会解释 event time、processing time、late event 和 attribution window。

风险

数据建模和 pipeline 设计缺少稳定性视角。

Training Plan

建议辅助训练路径

每条路径都可以按目标公司、岗位和面试日期继续细化。

01

按业务场景练 SQL:留存、增长、广告、订阅、marketplace。

02

每题都补指标口径、边界和反例。

03

DE 候选人额外训练回填、幂等、数据质量和 SLA。

Mock Output

一次合格训练结束后应该拿到什么

如果训练后只知道"这题怎么做",说明复盘还不够。更好的结果是形成下一轮能直接使用的表达和检查清单。

答题流程

一套能重复执行的开场、澄清、推进和收尾顺序

风险清单

3-5 个最容易扣分的习惯,以及下一次如何避免

追问素材

可展开的项目证据、边界测试、trade-off 和失败复盘

FAQ

关于 SQL / Data 面试辅助 的常见问题

常见问题

怎么练习 SQL / Data 面试辅助 题型?

先从 SQL Drill、Metric Design、Experiment 入手,每个模块至少做 5-10 道题目,记录卡点和 follow-up 版本。再做 2-3 次模拟面试,确保表达流畅、逻辑清晰。

常见问题

面试官在这一轮最看重什么?

面试官关注的是你的推理过程、前置澄清、复杂度评估、边界测试和 follow-up 处理。不仅仅是最终答案,更是整个解题过程的沟通质量。

常见问题

这一类题型的常见失分点有哪些?

SQL 会写单题,但业务口径一变就乱。;不会解释 event time、processing time、late event 和 attribution window。;数据建模和 pipeline 设计缺少稳定性视角。。建议每次训练后做复盘,记录扣分点和改进方向。

需要针对这一轮做 mock 或复盘?

添加微信 interview_coach_pro,发送目标公司、岗位、轮次和当前卡点。

返回题型库
已复制微信号!