hope you can enjoy! ??
SELECT
a.id,
a.type,
CASE
WHEN rk = num THEN
mod_num + divide_num ELSE divide_num
END 平均
FROM
(
SELECT
a.*,
row_number() over ( PARTITION BY type ORDER BY id ASC ) rk, --- 每个type内的排序
count(1) over ( PARTITION BY type ) num, --- 每个type的行数
MOD (
sum( quantity ) over ( PARTITION BY type ),
count(1)) over ( PARTITION BY type )) mod_num, --- 取余数
floor(
sum( quantity ) over ( PARTITION BY type ) / count(1) over ( PARTITION BY type )) divide_num --- 地板除法
FROM
t0727a a
LEFT JOIN t0727b b ON a.id = b.id
) a
mysql每日一题0727--窗口函数-mysql除法,取余数
原文:https://www.cnblogs.com/onemorepoint/p/15065201.html