货拉拉sql面试真题在线练习
一、sql刷题目的
做真题的目的主要有2个,为面试做准备和理解练习数据分析师的的业务逻辑和思考方式。数据分析师大部分都是偏向业务方面,指标上升或下降了,应该如何去分析,从哪些角度去分析,发现原因后及时与业务运营同学进行沟通,提出调整的建议。
切勿为了刷题而刷题,一定要在练习中去思考、分析业务,此外基础的语法无需过度练习,增删改之类的,因为很少的业务分析师有那么大的数据权限直接能去调整数据库中的数据,查询才是最常用的。基础语法有了解即可,不清楚的时候去查一下就好了。
二、互联网大厂货拉拉sql面试题
题目主要关于的是订单取消维度的查询,除了查询语句,大家还可以思考为什么要查这个指标?指标变动的原因是措施可能是什么。
1.货拉拉sql数据表介绍
hll_t1是订单表,包含订单编号,用户id,司机id,城市,订单状态,订单时间
order_id | usr_id | driver_id | cty | status | order_dt |
---|---|---|---|---|---|
1 | 1 | d16 | 北京 | cancel_by_driver | 2020/1/23 |
2 | 6 | d12 | 上海 | completed | 2020/1/24 |
3 | 3 | d15 | 深圳 | cancel_by_usr | 2020/1/25 |
4 | 5 | d14 | 广州 | cancel_by_driver | 2020/1/26 |
hll_t2是平台用户表,包含用户id,是否被平台拉黑,身份角色(乘客,司机)
usr_id | banned | role |
---|---|---|
1 | 0 | usr |
d11 | 1 | driver |
d12 | 0 | driver |
5 | 1 | usr |
大家可以直接到sql官网进行在线练习,可以在线刷题,还是比较好用的。
目前有B站、网易、小红书、快手、京东、嘀嘀、微信、今日头条、支付宝、莉莉丝、小米等互联网大厂的数据分析师sql面试真题,而且有答案,可以看sql语句的得分,题目还在陆续增加中。
sql互联网大厂面试真题http://www.sqlintern.com/sansa
2.货拉拉订单练习题sql语句
(1)用车方和司机被禁止(banned=1)的比率分别为?
(保留两位小数)(1分)
a.30.30%, 27.27%
b.23.34%, 28.34%
c.39.34%, 23.87%
----------先思考----------
明确问题:
无论哪一方,其禁止的指标都被分为“禁止”和“未禁止”,则禁止比率为:一方禁止数 / 一方总量(禁止+未禁止)也就是这类用户的总数量,sum(banned = 1) / count(1)
解题思路:
-- 使用分组 group by role
-- 对组内符合的条件进行计数sum(banned)
-- 计算组内的总记录数count(1)
-- sql保留小数 round(x, d), x是待处理的数字,d是保留的位数
-- sql字符串拼接concat(str1, str2),直接放数字也是可以拼接的,结果为字符串类型
参考答案
select
role
, sum(banned) as banned_num
, count(1) as all_num
, concat(round(sum(banned) / count(1), 4) * 100, '%') as banned_rate