作者newbiegg (威尔)
看板Database
标题[SQL ] 如何选择每人最後几笔交易平均?
时间Tue Dec 9 01:57:41 2014
某表格如下, 纪录顾客的每笔交易
Customer Amount Date
1 $10 10/1/2014
2 $15 11/1/2014
1 $20 11/2/2014
3 $5 11/8/2014
:
:
请问如何计算每位顾客"过去 10 笔"交易平均? 结果如下:
Customer Average
1 $9.5
2 $12
3 $8
:
当然, 有些顾客可能全部只有一笔. 有些上百笔. 但只取最後 10 笔平均.
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 50.14.158.35
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Database/M.1418061464.A.8D4.html
1F:→ carylorrk: ORDER BY + LIMIT 12/09 04:13
2F:→ carylorrk: sorry,没看清楚。一个比较没有效率的做法是 12/09 06:27
3F:→ carylorrk: SELECT customer, avg(amount) FROM record WHERE( 12/09 06:31
4F:→ carylorrk: SELECT count(*) FROM record as r WHERE 12/09 06:32
5F:→ carylorrk: r.customer = record.customer AND 12/09 06:33
6F:→ carylorrk: r.date = record.date 12/09 06:33
7F:→ carylorrk: ) <= 2 GROUP BY customer; 12/09 06:34