【发布时间】:2019-12-11 04:09:36
【问题描述】:
我有一张包含 ProductID、日期和价格的表格。我正在尝试编写以下代码:
- 确定每种产品销量最高的那一周
- 忽略 productid,找出销售额最大化的周数,即 将所有日期分成 7 天期间,以便在每 7 天内 期间销售额最大化。这些 7 天的周期是不允许的 重叠
我真的是 SQL 新手,我已经为此苦苦挣扎了几天,并查看了堆栈溢出问题。在第一个任务中,我认为我找到了理想的代码,但它似乎对其他人有用,但只返回给定日期的产品销售额,而不是一周的总和。
Select a.date, a.productid, sum(sales) from
(SELECT [Date Of Sale] as 'Date'
,[Product ID] as 'ProductID'
, [Sales in GBP] as 'Sales'
FROM [blah].[blah-blah])
) as a
where a.date between dateadd(day, -6, a.date) and dateadd(day, 0, a.date)
group by a.date, a.productid;
我已尝试调整到必要的内容,但没有错误消息,它只返回日期、productid、销售额,但对于日期“2007-01-13”,它只返回产品的销售额而不是从“2007-01-06”到“2007-01-13”的总销售额。 任何帮助将不胜感激。
【问题讨论】:
-
用您正在使用的数据库标记您的问题。样本数据和期望的结果真的很有帮助。言下之意,这个问题听起来像是三个问题,相当宽泛。