排名

用户解题统计

过去一年提交了

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

收藏

收藏日期 题目名称 解决状态
没有收藏的题目。

评论笔记

评论日期 题目名称 评论内容 站长评论
2024-12-06 销售金额前10的商品信息 
这样写可以吗
select 
goods_id
,sum(order_gmv) as total_gmv
,rank()over(partition by goods_id,order by sum(order_gmv) desc ) as ranking
from order_info 
where date(order_time)='2024-09-10'
limit 10
报错了
2024-12-05 表连接(5)哪些没被分出来,用左用内你来猜 
第二个表的mch_nm字段有null值在题设中没有发现,如果
select 
b.mch_typ,
b.mch_nm,
count(a.trx_amt) as trx_cnt,
sum(a.trx_amt) as trx_amt
from cmb_usr_trx_rcd a
left join cmb_mch_typ b
using(mch_nm)
WHERE a.usr_id = '5201314520' 
and year(trx_time)=2024 
and b.mch_typ is null
group by a.mch_nm,b.mch_typ
ORDER BY
    3 DESC
会报错,需把第三行改成a.mch_nm
啥也没说
2024-11-13 分组与聚合函数(2)擦边营收怎么样,聚合函数可看出 
select 
	date(trx_time) as trx_date,
	max(trx_amt) as max_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 date(trx_time) between '2024-09-01' and '2023-09-30' /*
group by 
	date(trx_date)
order by 
	date(trx_date)
请问这个应该怎么改,谢谢
别忘了min哦

提交记录

提交日期 题目名称 提交代码
2024-12-10 销售金额前10的商品信息 
select 
goods_id
,sum(order_gmv) as total_gmv
,rank()over(order by sum(order_gmv) desc ) as ranking
from order_info 
where date(order_time)='2024-09-10'
group by goods_id
order by sum(order_gmv) desc
limit 10
2024-12-06 抖音面试真题(1)T+1日留存率 
select 
usr_id,
min(date(login_time)) as first_login_date
from user_login_log 
group by usr_id
2024-12-05 表连接(2)渣男去过我对象没去过,那就用LeftJoin 
select a.mch_nmas asshole_tried,a.trx_cnt, b.mch_nm darling_tried
from
(select 
mch_nm,
count(mch_nm) as trx_cnt
from cmb_usr_trx_rcd 
where
year(trx_time) between 2023 and 2024
and usr_id='5201314520'
group by mch_nm
having count(mch_nm)>=20) a
left join
(select distinct mch_nm
from cmb_usr_trx_rcd 
where
year(trx_time) between 2023 and 2024
and usr_id='5201314521') b
on a.mch_nm=b.mch_nm
order by trx_cnt desc
2024-12-05 表连接(1)你们难道都去过?那就试试用InnerJoin 
select a.* from
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)=2024 and usr_id='5201314520') a
inner join
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)=2024 and usr_id='5201314521')b
using(mch_nm)
order by 1 desc
2024-12-05 表连接(1)你们难道都去过?那就试试用InnerJoin 
select a.* from
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)=2024 and usr_id='5201314520') a
join
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)=2024 and usr_id='5201314521')b
using(mch_nm)
order by 1 desc
2024-12-05 表连接(1)你们难道都去过?那就试试用InnerJoin 
select a.* from
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)='2024' and usr_id='5201314520') a
join
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)='2024' and usr_id='5201314521')b
using(mch_nm)
order by 1 desc
2024-12-05 表连接(1)你们难道都去过?那就试试用InnerJoin 
select a.* from
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)='2024' and usr_id='5201314520') a
inner join
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)='2024' and usr_id='5201314521')b
on a.mch_nm=b.mch_nm
order by 1 desc
2024-11-23 表连接(1)你们难道都去过?那就试试用InnerJoin 
select distinct a.* from 
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)=2024 and usr_id='5211314521')a
inner join
(select distinct mch_nm
from cmb_usr_trx_rcd
where month(trx_time)=2024 or usr_id='5201314520')b
on a.mch_nm != b.mch_nm order by 1 desc
2024-11-23 表连接(1)你们难道都去过?那就试试用InnerJoin 
select distinct * from 
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)=2024 and usr_id='5211314521')a
join
(select distinct mch_nm
from cmb_usr_trx_rcd
where month(trx_time)=2024 or usr_id='5201314520')b
on a.mch_nm != b.mch_nm order by 1 desc
2024-11-23 表连接(1)你们难道都去过?那就试试用InnerJoin 
select distinct a.* from 
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)=2024 and usr_id='5211314521')a
join
(select distinct mch_nm
from cmb_usr_trx_rcd
where month(trx_time)=2024 or usr_id='5201314520')b
on a.mch_nm != b.mch_nm order by 1 desc
2024-11-23 表连接(1)你们难道都去过?那就试试用InnerJoin 
select distinct a.* from 
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)=2024 and usr_id='5211314521')a
left join
(select distinct mch_nm
from cmb_usr_trx_rcd
where month(trx_time)=2024 or usr_id='5201314520')b
on a.mch_nm != b.mch_nm order by 1 desc
2024-11-23 表连接(1)你们难道都去过?那就试试用InnerJoin 
select * from 
(select distinct mch_nm
from cmb_usr_trx_rcd
where year(trx_time)=2024 and usr_id='5211314521')a
left join
(select distinct mch_nm
from cmb_usr_trx_rcd
where month(trx_time)=2024 or usr_id='5201314520')b
on a.mch_nm != b.mch_nm order by 1 desc
2024-11-23 子查询(1)玩的最嗨那天在做甚?要用Where子查询 
select *
from cmb_usr_trx_rcd
where trx_amt=
(select max(trx_amt)
from cmb_usr_trx_rcd
where usr_id='5201314520'
and year(trx_time)=2024
)
and usr_id='5201314520'
and year(trx_time)=2024
2024-11-23 子查询(1)玩的最嗨那天在做甚?要用Where子查询 
select
    *
from
    cmb_usr_trx_rcd
where
    trx_amt = (
        select max(trx_amt)
        from cmb_usr_trx_rcd
        where usr_id = '5201314520'
          and year(trx_time) = 2024
    )
    and usr_id = '5201314520'
    and year(trx_time) = 2024;
2024-11-17 字符串与通配符(1)名称里面有特服,可以使用通配符 
select count(distinct mch_nm) as mch_cnt
from cmb_usr_trx_rcd 
where mch_nm like '%按摩保健休闲%'
2024-11-17 字符串与通配符(1)名称里面有特服,可以使用通配符 
select *
from cmb_usr_trx_rcd 
where mch_nm like '%按摩保健休闲%'
2024-11-17 字符串与通配符(1)名称里面有特服,可以使用通配符 
select count(distinct mch_nm) as mch_cnt
from cmb_usr_trx_rcd 
where mch_nm like '%按摩%保健休闲%'
2024-11-17 字符串与通配符(1)名称里面有特服,可以使用通配符 
select * 
from cmb_usr_trx_rcd 
where mch_nm='%按摩保健休闲%'
2024-11-13 分类(1)姿势太多很过分,分类要用CaseWhen 
select
case when trx_amt=288 then '1.WithHand'
when trx_amt=388 then '2.WithMimi'
when trx_amt=588 then '3.BlowJobbie'
when trx_amt=888 then '4.Doi'
when trx_amt=1288 then '5.DoubleFly'
else '6.other'
end as ser_typ
,count(	trx_amt) as trx_cnt
,min(date(trx_time)) as first_date
from 
cmb_usr_trx_rcd
where usr_id='5201314520' and mch_nm='红玫瑰按摩保健休闲'
group by 1
order by 1
2024-11-13 分类(1)姿势太多很过分,分类要用CaseWhen 
select
case when trx_amt=288 then '1.WithHand'
when trx_amt=388 then '2.WithMimi'
when trx_amt=588 then '3.BlowJobbie'
when trx_amt=888 then '4.Doi'
when trx_amt=1288 then '5.DoubleFly'
else '6.other'
end as ser_typ,
count(1) as trx_cnt,
min(trx_time) as first_date
from 
cmb_usr_trx_rcd
where usr_id='5201314520' and mch_nm='红玫瑰按摩保健休闲'
group by 1 
order by 1