通辽可汗克鸽勃
通辽可汗克鸽勃
全部文章
分类
题解(29)
归档
标签
去牛客网
登录
/
注册
通辽可汗克鸽勃的博客
全部文章
(共31篇)
题解 | #每个城市中评分最高的司机信息#
就按照题目一步一步的来,先算平均数,在排序,将rank为1的联解 思路二可以使用max函数,然后用in select city,tmp.driver_id,round(mean,1), round(count(order_id)/count(distinct left(ord.orde...
Mysql
Oracle
2021-12-16
1
390
题解 | #某宝店铺的SPU数量#
union 是在order by之前进行的,因此对单表进行order by使用括号即可 我在每次添加合计行的时候就会添加临时表,这样在数据较大的情况下可以减少查询次数增加效率, with d_id as (select driver_id,grade from tb_get_car_order ...
Mysql
Oracle
2021-12-16
1
464
题解 | #10月的新户客单价和获客成本#
第一次速度击败了100%的人,只用总和处于人数就可以,没用到题解的在对id进行商品的聚合,所以会快很多 用了 () in (select)来匹配每个用户的第一次订单, select round(amount/num,1) , round((cost-amount)/num,1) fro...
Mysql
Oracle
2021-12-15
4
510
题解 | #某店铺的各商品毛利率及店铺整体毛利率#
不难,但是步骤繁琐,做题时要注意status,然后就是union和order by 的先后顺序了 在转变成百分比的时候括号特别多,不要少了 with tmp as (SELECT id, sum(in_price*if(status=2,-cnt,cnt)) as all_in, ...
Mysql
Oracle
2021-12-14
7
846
题解 | #统计2021年10月每个退货率不大于0.5的商品各项指标#
比较简单的题,子查询计数,然后进行统计清晰明了,要注意筛查分母为0 的情况 SELECT product_id,round(click/showtimes,3) as ctr, if(click=0,0,round(cart/click,3)), if(cart=0,0,...
Mysql
Oracle
2021-12-14
6
428
题解 | #每天的日活数及新用户占比#
这题算是比较简单的了,这次求新顾客用的累计次数和为1 而不是链接的方法,算是一种新的思路了,大家可以看一看! 因为之前已经说过了如何进行日期的拆分和求顾客的登录次数,说以不在赘述,代码如下 select date,count(uid) as dau, round( sum(if(times=...
Mysql
Oracle
2021-12-14
15
1500
题解 | #统计活跃间隔对用户分级结果#
代码又臭又长,用了很多次子查询,感觉很不聪明的样子,基本思路是如下 1:判断是不是找出最后一次登录时间差 2:是不是新顾客 3:标签分组 4:统计 select grade ,round( count(*)/(select count(distinct uid) from tb_user_...
Mysql
2021-12-14
13
1581
题解 | #2021年11月每天新用户的次日留存率#
最近练习了大厂的题目,发现其实sql语句总量并不大,解题重点在于逻辑一定要清晰。一下有几个注意点 1:先将跨天的日期表生成,这种简单的行相加就用union函数就可以,其中union all不去重 而union则会自动过滤重复的行 2:如何判断新客户,可以理解以前没有出现过,所以可以统计累计出现次数,...
Mysql
Oracle
2021-12-14
54
3080
题解 | #每篇文章同一时刻最大在看人数#
第一次做到这个类型的题目,一定要收藏一下。 本题的关键点: 1一个时间戳表格,记录每个时间点读者的行为, 2同时根据题目先进后出,对sign进行降序排序 3搭配sum + 窗口函数(order by)是累计和,这也是关键点 select artical_id,max(uv) as max_uv fr...
Mysql
Oracle
2021-12-09
1
337
题解 | #平均播放进度大于60%的视频类别#
本题类型和之前类似,相比if函数我比较常用case when daydiff和timestampdiff 前者是日期差,后者是时间差更为灵活 TIMESTAMPDIFF(day/hour/second....., '小时间', '大时间') 百分比的表示则先把avg*100 再用concat和%...
Mysql
Oracle
2021-12-01
64
4042
首页
上一页
1
2
3
4
下一页
末页