SELECT
c.month1 as 月份
,c.date1 as 日期
,c.num1 as 累计投诉额
-- ,IFNULL(d.num2,0) as 交易额
,SUM(d.num2)over(partition by c.month1 ORDER BY c.date1) as 累计交易额
,c.num1/SUM(d.num2)over(partition by c.month1 ORDER BY c.date1) as 投诉率
,row_number()over(partition by c.month1 order by c.num1) as 序号
FROM
(select
b.mon1 as month1
,b.date1 as date1
,sum(b.num)over(partition by b.mon1 order by b.date1) as num1
FROM
(SELECT
LEFT(txn_date,7) as mon1
,dispute_date as date1
,SUM(dispute_amount) as num
FROM kf_paypal_dispute_orders
WHERE txn_date >= "2021-01-01 00:00:00" AND txn_date <="2021-06-22 23:59:59 " AND dispute_type in ("争议","补偿申请","未经授权的补偿申请")
-- WHERE dispute_type in ("争议","补偿申请","未经授权的补偿申请") [[AND txn_date >= {{starttime}}]] [[AND txn_date <= {{{{endtime}}]]
GROUP BY mon1,date1)b
GROUP BY month1,date1
ORDER BY month1,date1) c
LEFT JOIN
(select
a.mon as month2
,a.date3 as date2
,a.num as num2
FROM
(SELECT
LEFT(txn_date,7) as mon
,txn_date as date3
,SUM(txn_amount_usd) as num
FROM kf_paypal_trans_orders
WHERE txn_time >="2021-01-01 00:00:00" AND txn_time <= "2021-06-22 23:59:59"
-- WHERE [[date3 >= {{starttime}}]][[AND date3 <= {{endtime}}]]
GROUP BY mon,date3) a
GROUP BY month2,date2
ORDER BY month2,date2)d
ON c.month1=d.month2 AND c.date1= d.date2
GROUP BY 月份,日期
ORDER BY 月份,日期
SQL较难
最新推荐文章于 2022-11-07 10:26:21 发布