我必须在需要列出哪些 CD 在特定日期销售最多的地方编写查询。为此,我只有有关所有 CD 及其购买日期的信息。我的查询只列出了 CD_NO 和它们的所有日期。我需要结果表来告诉我哪几天的销售量最大,并根据特定 CD 按最繁忙的日期对它们进行排序。我收集我需要做一个子查询,但是这些让我很困惑。
到目前为止我的查询:
SELECT CD_NO, purchase_date
FROM Artist
GROUP BY CD_NO, purchase_date
ORDER BY CD_NO
任何建议,因为我有点困惑:(
查询的具体规范是:
对于每张 CD,找出哪一天的销量最高。结果表需要列出 CD 编号和日期。请注意,如果有几天的最大销售额相同,则一张 CD 可能会在结果表中出现多次。
期望的输出:
CD_NO purchase_date
1 2011-12-30
2 2012-03-22
3 2012-04-24
3 2012-04-22
与 CD_NO 2 的所有其他购买日期相比,CD_NO 1 在特定日期 2011 年 12 月 30 日的销售额最高,CD_NO 2 在 2012 年 3 月 22 日的销售额最高,CD_NO 3 的总销售额在 2012 年 3 月 22 日两个日期,因此列出了两个日期。此结果表源自以下输入:
CD_NO purchase_date
1 2011-12-30
1 2011-12-30
1 2011-12-29
1 2011-12-28
2 2012-03-22
2 2012-03-22
2 2012-03-21
3 2012-04-24
3 2012-04-24
3 2012-04-22
3 2012-04-22
3 2012-04-21
我不确定这是否重要,但输入不一定按 CD_NO 排序,并且购买日期的最早日期并不总是最后。IE,输入的顺序可以是随机的,但输出应该由CD_NO排序。