京东校招数据分析笔试全解析:SQL、概率统计与业务案例

发布时间:2026/8/31 22:11:52
京东校招数据分析笔试全解析:SQL、概率统计与业务案例 1. 这份笔试题的“味道”它到底在筛选什么样的人2019年京东校招数据分析工程师的笔试我前前后后给不少准备校招的同学讲过。很多人拿到这套题的第一反应是“怎么这么杂”——SQL、概率论、业务案例、机器学习基础甚至还有一点A/B测试的影子。但这种“杂”不是出题人随手拼出来的它对应的是京东数据分析师这个岗位的真实工作节奏白天可能还在写SQL取数下午就要跟采销解释某个指标为什么跌了晚上还要帮算法团队看实验效果。笔试就是在用两个小时模拟入职后的日常。说到底这套题想筛的不是“刷题机器”而是具备三层能力的人。第一层是数据基本功能不能准确取数、能不能把统计结论说清楚第二层是业务理解力能不能把一个业务指标拆成可落地的分析动作第三层是沟通表达力能不能让不懂数据的人看懂你的分析逻辑。这三层能力刚好对应了笔试里的题型分布。很多同学觉得校招笔试要考“特别难的算法”但京东这套题恰恰相反它把大量分值放在基础知识和业务思维上因为这两样东西短期最练不出来也最能反映一个人适不适合当数据分析师。1.1 从岗位JD看笔试出题逻辑翻看京东校招数据分析工程师的岗位描述基本都会出现这么几个关键词熟悉SQL、掌握Python或R、了解统计学基础、有电商或物流相关实习经历优先。有些同学觉得“实习经历优先”只是客套话但放到笔试里你会发现大量场景题都带着电商和物流属性比如品类销量预测、大促流量分配、库存周转分析。如果完全没有接触过这类业务很容易把分析思路写偏或者写出来的方案根本落不了地。出题逻辑其实是“以终为始”。SQL题不是为了考语法而是看你能不能在海量数据里高效拿到结果概率统计题不是为了考公式而是看你能不能理解“不确定性”这件事业务案例题则是为了看你能不能从数据异常出发找原因、定假设、给动作。你可以把这份笔试题理解成一份“岗位能力说明书”的反向推导——题目里的每一种题型几乎都能在真实工作中找到对应场景。理解了这一点你就知道复习的时候应该往哪个方向使劲不要死记硬背而是想清楚每个知识点在工作里是怎么用的。1.2 试题结构与典型题型分布我印象中整套卷子大致分成四个模块。第一部分是SQL题通常两三道从简单查询到窗口函数、留存计算、连续问题都可能出现第二部分是概率与统计常考贝叶斯公式、期望计算、假设检验第三部分是机器学习基础一般是概念题或小案例比如过拟合怎么解决、模型评估怎么选第四部分是业务分析题给出一个电商或物流背景要求你写分析思路或者用数据验证结论。题型模块典型考点大致题量SQL多表关联、聚合、窗口函数、留存计算、去重2-3道概率统计贝叶斯、期望、显著性检验、置信区间1-2道机器学习基础过拟合、特征工程、评估指标、A/B测试1-2道业务分析指标拆解、归因分析、业务策略建议1-2道年份不同会有些微调但总体骨架是稳定的。这套结构其实也提醒了准备笔试的人不能只刷SQL也不能只看机器学习需要有一个完整的能力覆盖。杂是正常的关键是你能不能从“杂”里把握住一条主线——用数据回答业务问题。后面几章我会把每个模块里最值得展开讲的考点结合具体场景拆开聊。2. 咬人的不是难题而是基础题SQL与概率统计的实战细节很多同学刷题喜欢钻难题但在校招笔试里拉分最狠的往往是看起来很容易的基础题。京东这套题同样如此SQL和概率统计占了超过一半的分值但通过率并不高。原因不是知识点超纲而是基础题里埋了很多真实场景下才会遇到的细节。比如SQL里要不要考虑并列排名、日期函数的边界怎么处理概率题里要不要区分先验概率、p值能不能直接下结论。这些细节恰恰是区分“背过书”和“真会做”的关键。2.1 SQL题不是会写join就够我记得一道很有代表性的题目给定订单表和商品表统计每个品类下销售额最高的3个商品。很多人都知道窗口函数会写类似这样SELECT category_id, product_id, sales_amount FROM ( SELECT p.category_id, o.product_id, SUM(o.order_amount) AS sales_amount, RANK() OVER(PARTITION BY p.category_id ORDER BY SUM(o.order_amount) DESC) AS rk FROM orders o JOIN products p ON o.product_id p.product_id WHERE o.order_status completed GROUP BY p.category_id, o.product_id ) t WHERE rk 3;但细节问题马上就来了如果销售额并列怎么算Top3要求是“每个品类销售额最高的3个商品”如果只取3行可以用ROW_NUMBER如果并列的都算数得用DENSE_RANK如果一句“取前3”没说清楚并列最稳妥的写法是在答案开头先写一句“这里我按并列同时入选处理”。这个细节直接反映了你有没有业务判断力。另一个常见问题是只统计已完成订单还是包含取消订单这也要先做假设。出题人想看的不是你能不能默写出RANK的语法而是遇到真实数据时会不会先确认口径。还有一道易被低估的题是留存率计算。订单表里有user_id和order_date要求计算每日新客的次日留存率。基本思路是先用MIN(order_date)找到每个用户的首购日期再把第二天的活跃用户拉出来做匹配。但在卷面上完整写出来很多人会漏掉几个关键点。比如一个用户同一天有多笔订单需要先按user_id和order_date去重再比如日期字段是时间戳要用DATE函数转成日期避免跨天边界问题还要确认“新客”的定义是首次下单还是首次注册这会影响留存率的分母。一个建议是把SQL题当成“对业务口径的建模”先把业务规则写清楚再动手写代码。2.2 概率统计题贝叶斯与假设检验的校招级考法概率统计在笔试题里很少考复杂推导更多是看你能不能识别出该用哪个工具。我印象较深的一道题是这么描述的某商品在首页的点击率为10%用户点击后购买的转化率是20%没有点击就直接购买的概率是1%。现在看到一笔订单问它来自点击用户的概率是多少。这题本质上就是贝叶斯公式但不少人会漏掉先验概率直接把点击率当结果用。正确的做法是先算购买的总概率也就是点击后购买的概率加上未点击直接购买的概率然后用“点击且购买”除以“购买总概率”。这道题背后的素养特别重要面对新证据你会不会修正判断。做数据分析时经常遇到类似情况比如某个渠道的转化率特别高很多人的第一反应是“这个渠道投得多”但其实可能是因为这个渠道的流量本身偏向高意向用户。数据分析师不能只看结果还要回溯先验和流量结构这就是贝叶斯思想在业务里的体现。另一道很经典的小题是某页面改版后转化率从5%涨到5.5%两组样本各1000人问这个提升是否显著。很多同学的答案会停留在“p值小于0.05所以显著”。但这道题考的是你对“显著”的理解。5%和5.5%的差异在1000样本量下其实并不一定显著需要做两个比例的z检验或卡方检验算出来大概率不显著。而且就算显著也还要考虑效应量0.5个百分点的绝对提升值不值得全量上线得看成本和收益。出题人想看到的回答是一个完整的思考顺序先判断用什么检验再计算最后结合业务含义下结论。2.3 手写Python还是脑推逻辑笔试题里的编程题这套笔试题里偶尔会出现手写Python的小题比如实现一个去重函数、滑动平均或者简单的数据清洗逻辑。这不是要考算法而是看你能不能把逻辑清楚表达出来。很多非科班同学一看到“手写代码”就紧张但实际上难度很低。举个例子假设要写一个函数计算一个列表的滑动平均窗口为3def moving_average(data, window3): result [] for i in range(len(data) - window 1): window_sum sum(data[i:i window]) result.append(window_sum / window) return result这种题的关键不是代码多优雅而是能不能处理边界条件。比如窗口大小大于列表长度时怎么办要不要保留前几个不完整的窗口这就是数据分析里很常见的“口径”问题。建议答题时先写注释或伪代码再补全实现。阅卷人更看重思路清晰而不是追求一行式写法。同样的逻辑也适用于SQL题先把步骤拆开再写具体语句这样即使最终结果出了小问题阅卷人也知道你思考路径是对的。3. 业务案例题的核心从“一个指标跌了”看京东人怎么拆解业务案例题是整张卷子区分度最高的部分。基础题靠刷题能补但业务题能不能答好直接反映你有没有数据思维。京东的业务场景很有特点不是纯内容平台那么抽象它有实打实的商品、订单、库存、物流和用户生命周期。所以案例题经常长这样某个指标突然异常了请你分析一下原因。这道题没有标准答案但阅卷人心里有一套“好答案”的框架。3.1 电商业务场景还原转化率下降怎么归因假设题目给了一个场景某品类商品的整体转化率环比下降了10%要求写出分析思路。一个合格的分析框架至少包含四层。第一层是确认口径和数据真实性先看统计口径有没有变是不是上个月的数据补录了或者埋点出了问题第二层是维度拆解按时间、渠道、区域、用户分层、商品类目去切判断是全面下降还是局部下降第三层是外部归因比如竞品是否在大促是不是季节因素有没有突发社会事件影响消费意愿第四层是内部动作归因比如价格策略调整、首页资源位变动、库存缺货、客服响应变慢等。如果只写一句“可能是竞争对手搞促销”那是业务直觉不是数据分析。更好的回答方式是提出可验证的假设。比如你发现华东区域下降最严重可以假设“是不是华东某仓发货时效最近出了问题”。然后给出验证方案用订单数据匹配物流时效数据看该区域的发货时长是否显著变长再评估退款率和差评率有没有同步上升。这样写下来整个答案就从一个模糊的判断变成了一条可以被推翻或证实的逻辑链。面试官最喜欢看到的是“我提出假设我能验证它我也知道怎么推翻它”。3.2 物流与供应链场景提前预警和履约率分析京东的自营物流基因也经常出现在笔试题里。比如有一类题是大促前需要预测哪些商品应该提前备货到区域仓你会怎么分析这种题不要求你写完整建模过程而是看你能不能想到关键因素。一般至少要覆盖这么几个维度历史销量趋势、促销活动系数、季节因子、库存周转目标、仓间调拨成本。能把这些因素按重要程度排出来并且说明它们为什么影响备货就已经能拿到大部分分数了。再比如“履约率突然下降请你分析原因”。这类题跟转化率下降的框架类似但要更多考虑仓储和配送环节。可能是某个分拣中心设备故障可能是一线配送人员缺口突然增大也可能是极端天气导致配送延迟甚至可能是系统bug导致订单状态没有及时更新。数据分析师跟业务方对接时不能只会看表还要理解这里的物理世界逻辑库存有没有、人够不够、车在路上没、系统有没有把状态同步对。这种“业务物理直觉”不是学校教出来的需要在场景里慢慢积累。笔试阶段至少要有意识地去列出这些维度。3.3 数据敏感度题怎么判断一个结论可不可信业务案例题里还常常潜伏着一类“数据敏感度题”。它不是让你算数而是给你一张统计表让你找出问题、判断结论是否可信。最常见的是辛普森悖论整体上方案B的转化率更高但分渠道看每个渠道都是方案A更好问为什么。这题考察的是你会不会想到“分组和整体的结论出现矛盾时一定要先做分层分析”。原因往往是两组用户的流量结构不同比如方案B投了大量低意向的渠道虽然整体量大但每个细分渠道的转化率都不高。如果把渠道结构考虑进去你会发现方案A才是真正有效的。另一个常见的坑是样本偏倚。比如题目说“我们对购买过两次以上的用户做了调研发现满意度很高所以产品应该不错”。这个结论的问题在于样本只包含了复购用户完全漏掉了那些购买一次就流失的人自然会出现幸存者偏差。数据分析师的基本功之一就是对数字保持怀疑这个结论是怎么算出来的分母是什么样本代表谁这几个问题在业务题里反复出现其实就是考察你的批判性思维。看到数字不要急着信先问来源和口径这可能是业务题里最值钱的意识。4. 拿到这份题之后怎么练准备路径、答题节奏与避坑心得准备这种校招笔试题不需要把题库背得天昏地暗但一定要有自己的训练路径和踩坑清单。我见过太多人每天刷几十道SQL但到了考场上还是拿不到分原因就是没把自己代入“数据分析师”这个角色。下面这部分主要讲讲怎么用这套题来做针对性训练以及我自己和身边同学总结出来的一些实战经验。4.1 120分钟的时间分配策略京东校招笔试时长一般在120分钟左右四个模块都要答最怕的就是在一道SQL题上死磕。我的建议是拿到卷子先花2分钟快速浏览所有题把题目分成三类会做、能写一半、完全没有思路。然后优先完成第一类保证基本分再回头啃第二类把能写的步骤全部写上去最后剩下的时间再处理第三类能蒙一点是一点。不要让一道题占据超过20分钟数据分析岗笔试往往写着写着就会发现时间不够了。平时练习时就要培养倒计时习惯。可以给自己定一个参考时间SQL题每道控制在15分钟以内概率统计题每道10分钟左右机器学习概念题10分钟业务案例题20分钟最后留5到10分钟检查。这样做的目的不是让你赶时间而是让你形成一种取舍意识遇到完全不熟的题迅速写下已知条件和一个模糊的分析框架然后跳到下一题。笔试不是要把每道题都做到完美而是要在有限时间内展示出你的能力上限。4.2 踩过的坑格式、边界、假设说明这些坑我在批改模拟题时见过太多次。第一个SQL题不写关键注释和业务假设。有同学结果写对了但是没说明“我按已完成订单统计”“并列同时入选”这种答案在阅卷时容易被打折扣因为数据分析的第一步就是对齐口径。第二个概率题只写公式不写推导过程。如果用到的贝叶斯公式在中间一步用错了后面整个结果都错但如果你把思路写清楚阅卷人可能还能给步骤分。第三个业务题只给结论不给验证路径。比如“转化率下降是因为竞品促销”这种答案没有任何分析过程等于把题目扔回给面试官。还有几个更细的坑。比如SQL查询没有考虑数据量级直接写全表扫描真实的京东订单量级下这种SQL是跑不动的。哪怕笔试题没有要求写优化你可以在答案里提一句“如果数据量大可以通过分区裁剪或增加过滤条件来提升性能”这会是一个明显的加分项。再比如机器学习概念题答得太空问“过拟合怎么解决”至少要提到增加训练数据、简化模型、正则化、交叉验证这几类方案并且说明什么场景下优先用哪一种。把这些坑都避开整个卷面的专业度会上升一个档次。4.3 从这道笔试延伸出去的面试追问笔试只是一道关口后面面试官追问的内容往往就藏在笔试题里。比如你写了RANK()窗口函数面试官会问“如果数据量非常大窗口函数和普通分组聚合哪个更合适”概率题里你说了p值小于0.05显著面试官可能追问“p值能代表实际业务效果的大小吗”业务题里你分析了转化率下降可能跟物流时效有关面试官会继续问“你打算怎么排除其他因素”。这些追问其实都在逼你想得更深。所以在笔试准备阶段就要养成“多想一步”的习惯。每做完一道题问问自己这个答案还能从哪些角度被挑战如果数据量翻十倍该怎么办如果业务方不认这个结论怎么办这套2019年的笔试题虽然年份早了些但它的题型和思维方式并不过时。吃透它再去做更新的校招题心态会稳很多。因为那些新题无非是把JD里的场景换了一下、把指标名换了一下核心还是“用数据回答业务问题”。我自己的体会是校招笔试不是“考试”而是“模拟工作”。京东这套2019年的题之所以值得反复拿出来琢磨就是因为它把数据分析师日常最要命的东西都浓缩进了两个小时准确取数、合理统计、业务归因、清晰表达。把这些练扎实了比背一百道高频题都有用。最后再分享一个小技巧做业务题的时候把自己想象成被业务方拉进会议室的“数据同学”先问“数据对齐了吗”“口径是什么”再动手拆解。这种换位思考往往就是笔试和面试里最加分的瞬间。