计算每个客户按时间顺序的累计消费额。
- 只看
status = 'paid'的订单;customer_id为 null 的订单不输出。 - 订单金额
amount= 该订单所有订单行的qty * unit_price * (1 - discount)之和,discount为 null 按 0 算。 - 每个客户的订单按
order_ts从早到晚排序,order_ts相同时按order_id从小到大排;cum_amount是按这个顺序逐单累加到当前这一单(含)为止的金额。 - 同一时刻的两单,
cum_amount也要不同:排在前面的那单不包含后一单的金额。
输入
orders(order_id, customer_id, order_ts, status, channel)order_items(order_id, product_id, qty, unit_price, discount)
输出
列为 customer_id, order_id, order_ts, amount, cum_amount,每个已付款订单一行,行顺序不限。