我有一张表格,显示不同日期的各种产品的销售情况。格式就像
Date | Product | Sales
-----------+---------+-------------
01/01/2016 | B |250.00
-----------+---------+-------------
01/01/2016 | A |1050.00
-----------+---------+-------------
02/01/2016 | A |925.00
-----------+---------+-------------
04/01/2016 | B |741.00
-----------------------------------
我正在寻找一个查询来获取过去N天内每种产品的平均销售额。此查询用于VB.Net应用程序。请帮我查询以获取数据,提前致谢。
答案 0 :(得分:0)
您可以使用:
SELECT AVG(t.Sales) as average_col
FROM YourTable t
WHERE t.date >= DATE_SUB(NOW(), INTERVAL n DAY)
将n
替换为您的变量/值。
编辑:对于最后N
条记录:
SELECT t.product, AVG(t.Sales) as average_col
FROM YourTable t
Group by t.product
ORDER BY t.date DESC
LIMIT n
答案 1 :(得分:0)
试试这个(n = 10)
SELECT * FROM my_table t WHERE t.date >= DATE_ADD(CURDATE(), INTERVAL -10 DAY);