排名

用户解题统计

过去一年提交了

勋章 ①金银铜:在竞赛中获得第一二三名;②好习惯:自然月10天提交;③里程碑:解决1/2/5/10/20/50/100/200题;④每周打卡挑战:完成每周5题,每年1月1日清零。

收藏

收藏日期 题目名称 解决状态
2025-10-21 一线城市历年平均气温  已解决
2025-10-19 被收藏次数最多的商品  已解决
2025-10-18 基于共同兴趣爱好的餐厅推荐(6)-好基友(5)  已解决
2025-10-07 分类(1)姿势太多很过分,分类要用CaseWhen  已解决
2025-10-07 登录天数分布  已解决
2025-10-07 滴滴面试真题(1)-打车订单应答率  已解决
2025-10-06 各班第一名  未解决
2025-10-06 红包金额中位数  已解决

评论笔记

评论日期 题目名称 评论内容 站长评论
2025-10-06 红包金额中位数 
希望区块链越来越好
啥也没说

提交记录

提交日期 题目名称 提交代码
2025-10-21 每年地产与软件服务上市公司对比 
select 
	year(list_date) as Y
,sum(case when industry in ('全国地产', '区域地产') then 1 else 0 end) as '地产'
 	,sum(case when industry = '软件服务' then 1 else 0 end) as '软件服务'
from stock_info
where year(list_date) between '2000' and '2024'
group by year(list_date)
order by 1
2025-10-21 一线城市历年平均气温 
select 
	year(dt) as Y
,cast(avg(case when city = 'beijing' then tmp_h else null end) as decimal(4,2)) as '北京'
,cast(avg(case when city = 'shanghai' then tmp_h else null end) as decimal(4,2)) as '上海'
,cast(avg(case when city = 'shenzhen' then tmp_h else null end) as 
decimal(4,2)) as '深圳'
	,cast(avg(case when city = 'guangzhou' then tmp_h else null end)as
decimal(4,2)) as '广州'
from
	weather_rcd_china
where  year(dt) between 2011 and 2022
group by year(dt)
2025-10-20 被收藏次数最多的商品 
select 
	gd.gd_id
,gd.gd_nm
,count(fav.fav_trq) cont
from xhs_fav_rcd fav
 join gd_inf gd on fav.mch_id = gd.gd_id
 group by gd.gd_id, gd.gd_nm order by cont desc limit 1
2025-10-19 被收藏次数最多的商品 
select
	gd.gd_id
,gd.gd_nm
,count(fav.fav_trq) fav_count
from
 xhs_fav_rcdfav join gd_inf gd on fav.mch_id = gd.gd_id
 groupby gd.gd_id, gd.gd_nm
 order by fav_count desc
 limit 1
2025-10-18 基于共同兴趣爱好的餐厅推荐(6)-好基友(5) 
select a.cust_uid, c.cust_uid from 
(
select cust_uid, mch_nm from mt_trx_rcd1 where cust_uid='MT10000' group by cust_uid, mch_nm) a 
left join
(
select cust_uid, mch_nm from mt_trx_rcd1 group by cust_uid, mch_nm
  )c
on a.cust_uid <> c.cust_uid and a.mch_nm = c.mch_nm
group by a.cust_uid, c.cust_uid
having count(distinct a.mch_nm) >= 14
2025-10-18 基于共同兴趣爱好的餐厅推荐(6)-好基友(5) 
WITH mt10000_mch AS (
SELECT mch_nm
FROM mt_trx_rcd1
WHERE cust_uid = 'MT10000'
GROUP BY mch_nm
)
SELECT 'MT10000' cust_uid, t.cust_uid AS cust_uid_1
FROM mt_trx_rcd1 t
INNER JOIN mt10000_mch m ON t.mch_nm = m.mch_nm
WHERE t.cust_uid <> 'MT10000'
GROUP BY t.cust_uid
HAVING COUNT(*) >= 14;
2025-10-18 基于共同兴趣爱好的餐厅推荐(6)-好基友(5) 
with can as(
	select 
		mch_nm
	from mt_trx_rcd1 
	where cust_uid = 'MT10000' group by mch_nm
),
uid as(
	select
		cust_uid
frommt_trx_rcd1 
where mch_nm in(
select * from can
) and cust_uid != 'MT10000'
)
select 
	a.cust_uid
,b.cust_uid
from mt_trx_rcd1 a inner join uid b on a.cust_uid <> b.cust_uid
where a.cust_uid = 'MT10000' group by a.cust_uid, b.cust_uid
2025-10-18 基于共同兴趣爱好的餐厅推荐(5)-好基友(4) 
with a as(
	select
	cust_uid
 	 from mt_trx_rcd1 where mch_nm = '庄家界(千灯店)' and cust_uid != 'MT10000'
),
b as(
	select
	cust_uid
 	 from mt_trx_rcd1 where mch_nm = '黄记烘培宫廷桃酥王' and cust_uid != 'MT10000'
),
c as(
	select
	cust_uid
 	 from mt_trx_rcd1 where mch_nm = '品众素心素食餐厅' and cust_uid != 'MT10000'
),
d as(
	select
	cust_uid
 	 from mt_trx_rcd1 where mch_nm = '一枚帅哥做的菜' and cust_uid != 'MT10000'
),
e as(
	select
		a.cust_uid	
	from a inner join b on a.cust_uid = b.cust_uid
		 inner join c on a.cust_uid = c.cust_uid
 inner join d on a.cust_uid = d.cust_uid
)
select
	d1.cust_uid
,e.cust_uid
from mt_trx_rcd1 d1 
inner join e ond1.cust_uid <> e.cust_uid 
where d1.cust_uid = 'MT10000'
group by d1.cust_uid, e.cust_uid
2025-10-18 基于共同兴趣爱好的餐厅推荐(5)-好基友(3) 
with zjj as(
	select
		cust_uid
	from mt_trx_rcd1 where mch_nm = '庄家界(千灯店)' and cust_uid != 'MT10000' group by cust_uid 
),
hj as(
	select
		cust_uid
	from mt_trx_rcd1 where mch_nm = '黄记烘培宫廷桃酥王' and cust_uid != 'MT10000' group by cust_uid
),
pz as(
	select
		cust_uid
	from mt_trx_rcd1 where mch_nm = '品众素心素食餐厅' and cust_uid != 'MT10000' group by cust_uid
),
all_1 as(
	select
		zjj.cust_uid
	from zjj inner join hj onzjj.cust_uid = hj.cust_uid
			 inner join pz onzjj.cust_uid = pz.cust_uid
)
select
	d1.cust_uid
,a.cust_uid
from mt_trx_rcd1 d1 
inner join all_1 a on d1.cust_uid != a.cust_uid where d1.cust_uid = 'MT10000'
group by d1.cust_uid
,a.cust_uid
2025-10-18 基于共同兴趣爱好的餐厅推荐(5)-好基友(3) 
with zjj as(
	select
		cust_uid
	from mt_trx_rcd1 where mch_nm = '庄家界(千灯店)' and cust_uid != 'MT10000' group by cust_uid 
),
hj as(
	select
		cust_uid
	from mt_trx_rcd1 where mch_nm = '黄记烘培宫廷桃酥王' and cust_uid != 'MT10000' group by cust_uid
),
pz as(
	select
		cust_uid
	from mt_trx_rcd1 where mch_nm = '品众素心素食餐厅' and cust_uid != 'MT10000' group by cust_uid
),
all_1 as(
	select
		zjj.cust_uid
	from zjj inner join hj onzjj.cust_uid = hj.cust_uid
			 inner join pz onzjj.cust_uid = pz.cust_uid
)
select
	d1.cust_uid
,a.cust_uid
from mt_trx_rcd1 d1 
inner join all_1 a on d1.cust_uid != a.cust_uid where d1.cust_uid = 'MT10000'
2025-10-18 基于共同兴趣爱好的餐厅推荐(4)-好基友(2) 
select	
	a.cust_uid
,c.cust_uid
from(
	select 
		cust_uid
		,mch_nm
	from mt_trx_rcd1
where cust_uid = 'MT10000' group by cust_uid, mch_nm) a
left join
(
	select
		b1.cust_uid
	from 
(
	select
	cust_uid, mch_nm
from mt_trx_rcd1 where mch_nm = '庄家界(千灯店)' group by cust_uid, mch_nm
)b1
inner join 
(
	select
	cust_uid, mch_nm
from mt_trx_rcd1 where mch_nm = '黄记烘培宫廷桃酥王' group by cust_uid, mch_nm
)b2 on b1.cust_uid = b2.cust_uid
)c on a.cust_uid <> c.cust_uid
group by a.cust_uid, c.cust_uid
order by 2
2025-10-18 基于共同兴趣爱好的餐厅推荐(4)-好基友(2) 
select 
	d1.cust_uid, d2.cust_uid, d2.mch_nm
from mt_trx_rcd1 d1
join mt_trx_rcd1 d2 on d1.mch_nm = d2.mch_nm
where d1.cust_uid = 'MT10000'
	and (d2.mch_nm = '庄家界(千灯店)' or d2.mch_nm = '黄记烘培宫廷桃酥王')
group by d1.cust_uid, d2.cust_uid, d2.mch_nm
2025-10-18 基于共同兴趣爱好的餐厅推荐(4)-好基友(2) 
select 
	d1.cust_uid, d2.cust_uid, d2.mch_nm
from mt_trx_rcd1 d1
join mt_trx_rcd1 d2 on d1.mch_nm = d2.mch_nm
where d1.cust_uid = 'MT10000'
	and d2.mch_nm = '庄家界(千灯店)' or d2.mch_nm = '黄记烘培宫廷桃酥王'
group by d1.cust_uid, d2.cust_uid, d2.mch_nm
2025-10-18 基于共同兴趣爱好的餐厅推荐(3)-好基友(1) 
select 
	d1.cust_uid
,d2.cust_uid
,d2.mch_nm
from mt_trx_rcd1 d1
join mt_trx_rcd1 d2 on d1.mch_nm = d2.mch_nm
where d2.mch_nm = '兰州李晓明拉面馆' 
		andd2.cust_uid != 'MT10000'
andd1.cust_uid = 'MT10000'
group by d1.cust_uid
	,d2.cust_uid
,d2.mch_nm
2025-10-18 基于共同兴趣爱好的餐厅推荐(2)-还有谁吃过 
select 
	cust_uid
,mch_nm
from mt_trx_rcd1
where 
mch_nm = '兰州李晓明拉面馆'
group by cust_uid
2025-10-18 基于共同兴趣爱好的餐厅推荐(1)-我吃过啥 
select 
	cust_uid
,mch_nm
from mt_trx_rcd1 
where cust_uid = 'MT10000' 
group by cust_uid
,mch_nm
order by mch_nm
2025-10-18 基于共同兴趣爱好的餐厅推荐(1)-我吃过啥 
select 
	cust_uid
,mch_nm
from mt_trx_rcd1 
where cust_uid = 'MT10000' order by mch_nm
2025-10-14 直观对比两种频率计算的差异(F) 
with temp_table_tx as(
	select
		cust_uid
		,count(*) transaction_count
	from 
		mt_trx_rcd_f 
	group by cust_uid
),
temp_table_act as(
	select
		cust_uid
		,count(distinct date(trx_dt)) active_days_count
	from 
		mt_trx_rcd_f 
	group by cust_uid
),
ranked_temp_tx as (
	select
		cust_uid
		,transaction_count
		,rank() over(order by transaction_count desc) rn
	from
temp_table_tx
),
ranked_temp_act as(
	select
		cust_uid
,active_days_count
		,rank() over(order by active_days_count desc) rn
	from
temp_table_act
)
select
	t.cust_uid
,rt.transaction_count
,rt.rn transaction_rank
,ra.active_days_count
,ra.rn active_days_rank
,abs(cast(rt.rn AS SIGNED) - cast(ra.rn AS SIGNED)) as rank_difference 
from 
	temp_table_tx t
 	 join ranked_temp_tx rt on t.cust_uid = rt.cust_uid
 join temp_table_act a on t.cust_uid = a.cust_uid
 join ranked_temp_act ra on t.cust_uid = ra.cust_uid
2025-10-14 直观对比两种频率计算的差异(F) 
with temp_table_tx as(
	select
		cust_uid
		,count(*) transaction_count
	from 
		mt_trx_rcd_f 
	group by cust_uid
),
temp_table_act as(
	select
		cust_uid
		,count(distinct date(trx_dt)) active_days_count
	from 
		mt_trx_rcd_f 
	group by cust_uid
),
ranked_temp_tx as (
	select
		cust_uid
		,row_number() over(order by transaction_count desc) rn
	from
temp_table_tx
),
ranked_temp_act as(
	select
		cust_uid
		,row_number() over(order by active_days_count desc) rn
	from
temp_table_act
)
select
	t.cust_uid
,t.transaction_count
,rt.rn transaction_rank
,a.active_days_count
,ra.rn active_days_rank
,abs(cast(rt.rn AS SIGNED) - cast(ra.rn AS SIGNED)) as rank_difference 
from 
	temp_table_tx t
 	 join ranked_temp_tx rt on t.cust_uid = rt.cust_uid
 join temp_table_act a on t.cust_uid = a.cust_uid
 join ranked_temp_act ra on t.cust_uid = ra.cust_uid
2025-10-14 直观对比两种频率计算的差异(F) 
with temp_table_tx as(
	select
		cust_uid
		,count(*) transaction_count
	from 
		mt_trx_rcd_f 
	group by cust_uid
),
temp_table_act as(
	select
		cust_uid
		,count(distinct date(trx_dt)) active_days_count
	from 
		mt_trx_rcd_f 
	group by cust_uid
),
ranked_temp_tx as (
	select
		cust_uid
		,row_number() over(order by transaction_count desc) rn
	from
temp_table_tx
),
ranked_temp_act as(
	select
		cust_uid
		,row_number() over(order by active_days_count desc) rn
	from
temp_table_act
)
select
	t.cust_uid
,t.transaction_count
,rt.rn transaction_rank
,a.active_days_count
,ra.rn active_days_rank
,cast(rt.rn AS SIGNED) - cast(ra.rn AS SIGNED) as rank_difference 
from 
	temp_table_tx t
 	 join ranked_temp_tx rt on t.cust_uid = rt.cust_uid
 join temp_table_act a on t.cust_uid = a.cust_uid
 join ranked_temp_act ra on t.cust_uid = ra.cust_uid