select
mch_nm,
avg_amt,
case
when avg_amt<100 then '低档'
when avg_amt between 100 and 300 then '中档'
when avg_amt>=300 then '高档'
end as type
from
(select
mch_nm,
round(sum(trx_amt)/count(distinct cust_uid),4) as avg_amt
from mt_trx_rcd1
group by mch_nm
)t1
order by 2
select
mch_nm,
avg_amt,
case
when avg_amt<100 then '低档'
when avg_amt between 100 and 300 then '中档'
when avg_amt>=300 then '高档'
end as type
from
(select
mch_nm,
round(sum(trx_amt)/count(1),4) as avg_amt
from mt_trx_rcd1
group by mch_nm
)t1
order by 2
select
mch_nm,
avg_amt,
case
when avg_amt<100 then '低档'
when avg_amt between 100 and 300 then '中档'
when avg_amt>=300 then '高档'
end as type
from
(select
mch_nm,
round(sum(trx_amt)/count(1),4) as avg_amt
from mt_trx_rcd1
group by mch_nm
)t1
select
mch_nm,
avg_amt,
case
when avg_amt<100 then '低档'
when avg_amt between 100 and 300 then '中档'
when avg_amt>300 then '高档'
end as type
from
(select
mch_nm,
round(sum(trx_amt)/count(1),4) as avg_amt
from mt_trx_rcd1
group by mch_nm
)t1
select
mch_nm,
avg_amt,
case
when avg_amt<100 then '低档'
when avg_amt between 100 and 300 then '中档'
when avg_amt>300 then '高档'
end as type
from
(select
mch_nm,
round(sum(trx_amt)/count(1),2) as avg_amt
from mt_trx_rcd1
group by mch_nm
)t1
select
cust_uid,
case when cnt>=7 then 1 else 0 end as type
from(
select
cust_uid,
count(distinct mch_typ2) as cnt
from mt_trx_rcd1
group by cust_uid
)t1
select
first_login_date dt,
count(distinct usr_id) cnt
from
(
select
usr_id,
min(date(login_time)) as first_login_date
from user_login_log
group by usr_id
having first_login_date between '2024-09-01' and '2024-09-30'
) t1
group by first_login_date
order by 1
select
first_login_date,
count(distinct usr_id)
from
(
select
usr_id,
min(date(login_time)) as first_login_date
from user_login_log
group by usr_id
having first_login_date between '2024-09-10' and '2024-09-30'
) t1
group by first_login_date
order by 1
select
first_login_date,
count(distinct usr_id)
from
(
select
usr_id,
min(date(login_time)) as first_login_date
from user_login_log
group by usr_id
having first_login_date between '2024-09-10' and '2024-09-30'
) t1
group by first_login_date
select
sum(case when datediff(begin_date,'2020-11-20')<= dur_time then daily_pay else 0 end)
from(
select
user_id uid,
begin_date,
datediff(end_date,begin_date) as dur_time,
pay_amount/datediff(end_date,begin_date) as daily_pay
from bilibili_m1
) t1