排名

用户解题统计

过去一年提交了

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

收藏

评论笔记

评论日期 题目名称 评论内容 站长评论
没有评论过的题目。

提交记录

提交日期 题目名称 提交代码
2026-01-19 HAVING子句中的子查询 
select
	mch_nm
,sum(trx_amt)as mch_total_amt
from cmb_usr_trx_rcd
group by mch_nm
having sum(trx_amt)>(select avg(trx_amt) from cmb_usr_trx_rcd)*10
order by mch_total_amt desc
2026-01-19 NOT IN子查询 
select*
from cmb_usr_trx_rcd
having
	usr_id not in(select distinct usr_id
 		from cmb_usr_trx_rcd
 		where mch_nm='肯德基')
ORDER BY usr_id, trx_time
2026-01-19 IN子查询 
select*
from cmb_usr_trx_rcd
having
	usr_id in(select distinct usr_id
 		from cmb_usr_trx_rcd
 		where mch_nm='肯德基')
ORDER BY usr_id, trx_time
2026-01-19 IN子查询 
select*
from cmb_usr_trx_rcd
where mch_nm='肯德基'
2026-01-19 WHERE子查询 + 比较运算符 
select*
from cmb_usr_trx_rcd
having trx_amt>(select avg(trx_amt)from cmb_usr_trx_rcd)
order by trx_amt desc
2026-01-19 基础标量子查询-带分组 
select 
	distinct usr_id
,sum(trx_amt)as total_amt
,(select avg(trx_amt)from cmb_usr_trx_rcd)as platform_avg_amt
from cmb_usr_trx_rcd
group by usr_id
order by total_amt desc
2026-01-18 销售金额前10的商品信息(2) 
select *
from 
(select date(order_time) order_date,
goods_id, sum(order_gmv) total_gmv,
rank() over(partition by date(order_time) order by sum(order_gmv)) ranking
from order_info
where order_time like '2024-10%'
group by order_date, goods_id) t
where ranking <= 3
2026-01-18 销售金额前10的商品信息(2) 
with daily_gmv as
(select
	date(order_time)as order_date
,goods_id
,sum(order_gmv)as total_gmv
from order_info
where year(order_time)=2024
	and month(order_time)=10
group by date(order_time),goods_id),
ranked_goods as(
	select
		order_date
		,goods_id
		,total_gmv
		,row_number()over(
	partition by order_date
	order by total_gmv)as ranking
from daily_gmv)
select
	order_date
		,goods_id
		,total_gmv
,ranking
from ranked_goods
where ranking<=3
order by order_date,ranking
2026-01-18 销售金额前10的商品信息 
select 
	goods_id
,sum(order_gmv)as total_gmv
from order_info
where date(order_time)='2024-09-10'
group by goods_id
order by total_gmv desc
limit 10
2026-01-18 表连接(2)渣男去过我对象没去过,那就用LeftJoin 
select
	t1.mch_nm as asshole_tried
,t1.trx_cnt
,case when t2.mch_nm is not null then t2.mch_nm else null end as darling_tried
from 
	(select
	mch_nm
	,count(*)as trx_cnt
from cmb_usr_trx_rcd
where usr_id=5201314520
and year(trx_time)in(2023,2024)
group by mch_nm
having count(*)>=20)t1
left join
	(select distinct mch_nm
from cmb_usr_trx_rcd
where usr_id=5211314521
and year(trx_time)in(2023,2024))t2
on t1.mch_nm=t2.mch_nm
order by t1.trx_cnt desc
2026-01-18 表连接(1)你们难道都去过?那就试试用InnerJoin 
select distinct a.mch_nm
from cmb_usr_trx_rcd a
inner join cmb_usr_trx_rcd b
on a.mch_nm=b.mch_nm
where a.usr_id='5201314520'
and b.usr_id='5211314521'
and year(a.trx_time)=2024
and year(b.trx_time)=2024
order by a.mch_nm desc
2026-01-18 子查询(1)玩的最嗨那天在做甚?要用Where子查询 
select*
from cmb_usr_trx_rcd
where
	usr_id='5201314520'
and year(trx_time)=2024
order by trx_amt desc
limit 1
2026-01-18 小结(2)越花越多是死罪,按月统计Substr 
select
	substr(trx_time,1,7) as trx_mon
,count(*)as trx_cnt
,sum(trx_amt)as trx_amt
from cmb_usr_trx_rcd
where
	usr_id=5201314520
and date(trx_time) > '2022-11-01' and date(trx_time) <= '2024-12-31'
and ((truncate(trx_amt,0)rlike'88$|98$'and trx_amt>=200 and hour(trx_time)in(0,1,2,23))
or upper(mch_nm) rlike('足疗|保健|按摩|养生|SPA'))
group by usr_id,trx_mon
order by trx_mon
2026-01-18 分组与聚合函数(5)五花八门的项目,其实都有固定套路(2) 
select
	trx_amt
,count(*)as total_trx_cnt
,count(distinct usr_id) as unique_usr_cnt
,count(*)/count(distinct usr_id)as avg_trx_per_user
from cmb_usr_trx_rcd
where 
	mch_nm='红玫瑰按摩保健休闲'
	and
	((year(trx_time)=2023
and month(trx_time)between 1 and 12)
or
		(year(trx_time)=2024
and month(trx_time)between 1 and 6))
group by trx_amt
order by avg_trx_per_user desc
limit 5
2026-01-18 分组与聚合函数(2)擦边营收怎么样,聚合函数可看出 
select
	date(trx_time)as trx_date
,max(trx_amt)as max_trx_amt
,min(trx_amt)as min_trx_amt
,avg(trx_amt)as avg_trx_amt
,sum(trx_amt)as total_trx_amt
from cmb_usr_trx_rcd
where
	mch_nm='红玫瑰按摩保健休闲'
and left(trx_time,7)='2024-09'
group by date(trx_time)
order by trx_date
2026-01-18 分组与聚合函数(3)五花八门的项目,其实都有固定套路(1) 
select 
	trx_amt
,count(*)as trx_cnt
from cmb_usr_trx_rcd
where
	mch_nm='红玫瑰按摩保健休闲'
and year(trx_time)='2024'
and month(trx_time)between 1 and 7
group by trx_amt
order by trx_cnt desc
limit 5
2026-01-18 分组与聚合函数(2)擦边营收怎么样,聚合函数可看出 
select
	date(trx_time)as trx_date
,max(trx_amt)as max_trx_amt
,min(trx_amt)as min_trx_amt
,avg(trx_amt)as avg_trx_amt
,sum(trx_amt)as total_trx_amt
from cmb_usr_trx_rcd
where
	usr_id=5201314520
and mch_nm='红玫瑰按摩保健休闲'
and left(trx_time,7)='2024-09'
group by date(trx_time)
order by trx_date
2026-01-18 分组与聚合函数(2)擦边营收怎么样,聚合函数可看出 
select
	date(trx_time)as trx_date
,max(trx_amt)as max_trx_amt
,min(trx_amt)as min_trx_amt
,avg(trx_amt)as avg_trx_amt
,sum(trx_amt)as total_trx_amt
from cmb_usr_trx_rcd
where
	usr_id=5201314520
and mch_nm='红玫瑰按摩保健休闲'
and left(date(trx_time),7)='2024-09'
group by date(trx_time)
order by trx_date
2026-01-18 条件过滤(3)Hour函数很给力,组合条件要仔细 
select*
from
	cmb_usr_trx_rcd
where usr_id =5201314520
	and date(trx_time) between '2024-09-01' and '2024-09-30'
and (hour(trx_time)>='22:00:00' or hour(trx_time)<='05:00:00')
order by trx_time
2026-01-18 条件过滤(3)Hour函数很给力,组合条件要仔细 
select*
from
	cmb_usr_trx_rcd
where usr_id =5201314520
	and date(trx_time) between '2024-09-01' and '2024-09-30'
and hour(trx_time)>'22:00:00' or hour(trx_time)<='05:00:00'
order by trx_time