news 2026/8/31 22:11:45

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
京东校招数据分析笔试全解析: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的小题,比如实现一个去重函数、滑动平均,或者简单的数据清洗逻辑。这不是要考算法,而是看你能不能把逻辑清楚表达出来。很多非科班同学一看到“手写代码”就紧张,但实际上难度很低。举个例子,假设要写一个函数,计算一个列表的滑动平均,窗口为3:

def moving_average(data, window=3): 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年的题,之所以值得反复拿出来琢磨,就是因为它把数据分析师日常最要命的东西都浓缩进了两个小时:准确取数、合理统计、业务归因、清晰表达。把这些练扎实了,比背一百道高频题都有用。最后再分享一个小技巧:做业务题的时候,把自己想象成被业务方拉进会议室的“数据同学”,先问“数据对齐了吗”“口径是什么”,再动手拆解。这种换位思考,往往就是笔试和面试里最加分的瞬间。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/31 22:09:51

138、动态编程(Dynamic Programming)

138、动态编程(Dynamic Programming) 昨晚盯着个“字段符号未赋值”的dump看了半小时,最后发现是动态读取数据库表时,字段名大小写被数据库连接参数给坑了。这种问题你写死代码永远遇不到,一旦玩动态编程,各种妖魔鬼怪全冒出来。今天这篇笔记,就把我在ABAP动态编程里踩…

作者头像 李华
网站建设 2026/8/31 22:07:40

MATLAB Simulink三相短路暂态仿真从建模到波形分析

做电力系统课程设计或毕业设计时&#xff0c;三相短路仿真是一个绕不开的经典题目。很多同学从教材上读懂了短路电流的冲击过程和衰减规律&#xff0c;但一到 MATLAB/Simulink 里搭建模型&#xff0c;就不知道该从哪里拖模块&#xff0c;故障模块怎么配置&#xff0c;波形为什么…

作者头像 李华
网站建设 2026/8/31 22:05:00

Linux下STM32CubeIDE 1.19.0从.ioc配置文件导入工程报错排查

如果你在Linux上用STM32CubeIDE 1.19.0从已有的.ioc配置文件导入工程时&#xff0c;碰上一堆莫名其妙的报错&#xff0c;别急。我前几天也遇到了同样的问题&#xff0c;折腾了大半天&#xff0c;最后从配置文件解析、工作区路径、环境依赖三个方向一步步排查才搞定。这篇文章基…

作者头像 李华
网站建设 2026/8/31 22:03:42

主动式AI自动化组织:从被动问答到自动执行的工程实践

过去一年里&#xff0c;AI 工具已经改变了很多人写代码、写文档、做设计的方式。但这些工具本质上还是“被动式”的&#xff1a;你给出指令&#xff0c;它给出回答&#xff1b;你不问&#xff0c;它不动。真正能带来组织效率质变的&#xff0c;不是这种被动问答&#xff0c;而是…

作者头像 李华
网站建设 2026/8/31 22:00:47

VSCode + CMake 下 STM32 集成 CMSIS-DSP 库的编译问题与解决

1. 问题现场&#xff1a;CubeMX加完DSP库&#xff0c;VSCode直接编译失败这问题我太熟了。那段时间我在做一个电机控制的项目&#xff0c;主控是STM32F407&#xff0c;平时用VSCode CMake arm-none-eabi-gcc这套组合开发。因为要在代码里跑一些实数FFT做电流谐波分析&#xf…

作者头像 李华