2025年6月23日
摘要: 1 -- 三日留存率 2 3 select substr(a.active_time,1,10) actday,count(a.userid) act,count(b.userid) lct, 4 concat(round(count(b.userid)/ count(a.userid),2)*10 阅读全文
posted @ 2025-06-23 12:37 北京的小乔 阅读(7) 评论(0) 推荐(0)
摘要: 交易表:user_sales_table字段: user_name pay_amount(支付金额)需求:求累计支付金额前20% 1 select user_name from ( 2 select user_name,ntile(5) over(order by tpay desc) nt fro 阅读全文
posted @ 2025-06-23 12:29 北京的小乔 阅读(10) 评论(0) 推荐(0)
摘要: 表:emp字段:id(员工ID) en_dt(入职日期) le_dt(离职日期) 日历表:cal 字段:dt 一个月在职一天,只算1/30个人 只计算2020-03-31 需求:员工在职人数 mont(月份) ps(在职人数) 1 select 2 ms,cast(sum(if(ms = '1',c 阅读全文
posted @ 2025-06-23 12:28 北京的小乔 阅读(11) 评论(0) 推荐(0)
摘要: 排列问题 四个足球队:湖人 骑士 灰熊 勇士 拿到所有对组合,每队只比一次 team_name 1 -- 方法一 2 select m1.team_name t1,m2.team_name t2 from team_name m1,team_name m2 where m1.team_name < 阅读全文
posted @ 2025-06-23 12:26 北京的小乔 阅读(4) 评论(0) 推荐(0)
摘要: 表: user_login 字段:user_id course_id login_in login_out 表:course_apply 字段:course_id user_id(是个列表 【1,2,3,4】)需求:出勤率指用户看直播时间超过40分钟,则视为出勤期望结果:课程id 出勤率 注意: 转 阅读全文
posted @ 2025-06-23 12:25 北京的小乔 阅读(11) 评论(0) 推荐(0)
摘要: 表:order_detail字段:order_id user_id product_id price cnt order_date 复购率 = 某商品近90天内购买至少2次的人数 / 90天内购买过该商品的人数需求:近90天的最大日期以订单表里最后的日期期望结果:product_id 复购率 1 s 阅读全文
posted @ 2025-06-23 12:21 北京的小乔 阅读(32) 评论(0) 推荐(0)
摘要: 表:promotion_info 记录了每个品牌每个优惠的活动时间,同一个品牌优惠活动可能会有交叉字段:brand start_date end_date需求:求每个品牌的优化总天数,同一个品牌多个优惠活动在同一天,则算一天 思路: 需要两个优化活动的开始结束时间区间做比较, 拿到前面最大的结束日期 阅读全文
posted @ 2025-06-23 12:14 北京的小乔 阅读(18) 评论(0) 推荐(0)
摘要: 表:order_detail 字段:order_id sku_id create_date sku_num 需求:同一商品在21年和22年中同一个月份的销量期望结果:sku_id month 2021年 2022年 1 select 2 3 sku_id 4 ,mont 5 ,sum(case wh 阅读全文
posted @ 2025-06-23 12:12 北京的小乔 阅读(12) 评论(0) 推荐(0)
摘要: 表: order_detail 字段:order_id sku_id create_date price sku_num 需求:商品销售额连续三天超过100的商品 1 -- 方法一 2 select distinct sku_id from ( 3 select sku_id,create_date 阅读全文
posted @ 2025-06-23 12:11 北京的小乔 阅读(22) 评论(0) 推荐(0)
摘要: 表:score 字段:s_no(学号),c_no(课程号),s_score(分数) 需求:连续两门功课>=70的学生 1 -- 连续两门功课>=70 2 3 select distinct s_no from ( 4 select 5 s_no,c_no,s_score,flag,lead(flag 阅读全文
posted @ 2025-06-23 12:08 北京的小乔 阅读(11) 评论(0) 推荐(0)
摘要: 表:sku_info 字段:sku_id name category_id price 需求:求各分类商品的价格中位数 期望结果:category_id medprice 1 select 2 category_id 3 ,cast(avg(if(ct/2 = 0,if(num = ct / 2 o 阅读全文
posted @ 2025-06-23 12:05 北京的小乔 阅读(15) 评论(0) 推荐(0)
摘要: 表:user_login_detail 字段:user_id login_ts 连续签到领金币每天签到领1金币,连续签到3、7天,分别额外多领2和6个金币连续签到7天重新累计需求:求每个用户领取的金币数 1 select user_id,sum(ct) + sum(coin) total_ct fr 阅读全文
posted @ 2025-06-23 12:03 北京的小乔 阅读(20) 评论(0) 推荐(0)
摘要: 表:user_login_detail 字段:user_id login_ts 需求:设置活跃用户分级忠实用户:近7天活跃且非新用户新晋用户:近7天新增沉睡用户:近7天未活跃,但7天前活跃 1 -- 方法一 2 3 select 4 user_id, 5 case 6 when first_day 阅读全文
posted @ 2025-06-23 12:00 北京的小乔 阅读(11) 评论(0) 推荐(0)
摘要: 销售额完成任务指标的商品 要求每个商品每月卖出一定量 1商品>=21000 2商品>=10000 其余没有要求 订单明细表:order_detail 字段:order_id sku_id create_date price sku_num 需求:查询连续两个月销售额大于等于销售任务总额的商品 1 s 阅读全文
posted @ 2025-06-23 11:55 北京的小乔 阅读(7) 评论(0) 推荐(0)
摘要: 表:user_login_detail 字段:user_id login_ds 需求:查询每个用户登录日期之间最大空档值,距今的最大值也要考虑,假设今天 2021-10-10 1 select user_id,max(diff_day) 最大空档日 from ( 2 select user_id,d 阅读全文
posted @ 2025-06-23 11:52 北京的小乔 阅读(6) 评论(0) 推荐(0)
摘要: 订单信息表: order_info 字段: user_id create_date total_amount 需求:查询出每个用户的最近三个日期所有订单 1 -- 方法一 2 select two.* from ( 3 select user_id,create_date from ( 4 sele 阅读全文
posted @ 2025-06-23 11:50 北京的小乔 阅读(18) 评论(0) 推荐(0)
摘要: 订单信息表: order_info 字段:订单号 order_id, 用户ID user_id,下单时间 create_date, 订单金额 total_amount 需求:至少连续3天下单的用户id 1 select distinct user_id from ( 2 select user_id 阅读全文
posted @ 2025-06-23 11:44 北京的小乔 阅读(13) 评论(0) 推荐(0)
摘要: 订单信息表:order_info 字段:order_id user_id create_date total_amount 需求:从订单信息表,order_info 首次下单后,第二天连续下单占所有下单用户数比例 以百分位展示,保留一位小数 1 -- 排序取了一天,lead 取了后一天,看两个日期是 阅读全文
posted @ 2025-06-23 11:43 北京的小乔 阅读(12) 评论(0) 推荐(0)
摘要: 表:user_login_detail 字段:user_id login_ts 表:order_info 字段:order_id user_id create_date total_amount 需求:从用户登录明细表 user_login_detail 和订单信息表 order_info 中查询每 阅读全文
posted @ 2025-06-23 11:38 北京的小乔 阅读(8) 评论(0) 推荐(0)
摘要: 商品订单表:order_detail 字段:订单号 order_id, 商品ID sku_id,商品销售数量 sku_num 需求:取商品销量排名第二的商品ID 1 select b.sku_id from ( 2 select sku_id,sumsku,row_number over(parti 阅读全文
posted @ 2025-06-23 11:35 北京的小乔 阅读(10) 评论(0) 推荐(0)