-1

我有以下代码:

SELECT CD_NO, COUNT(purchasedate) AS most_sales
FROM Artist
GROUP BY CD_NO

这将返回每张 CD 的销售量,因为每次销售 CD 都有一个购买的条目。但是,我希望从中找出每个 CD_NO 的销售额最多的日期,而不是显示数字来显示当天 most_sales 的日期。因此,它将根据特定 CD 输入购买日期,然后对它们进行计数并找到特定购买日期的最大购买次数。

例如打开这个输入:

CD_NO          purchasedate
1              2012-04-04
1              2012-04-04
1              2012-04-03
2              2012-04-03
2              2012-04-03
2              2012-04-03
2              2012-04-02

并将其变成:

CD_NO           most_sales
1               2012-04-04
2               2012-04-03

这是因为它计算了 CD_NO 的不同日期,然后返回哪个日期最多。

4

3 回答 3

0
SELECT CD_NO, COUNT(purchasedate) AS most_sales
INTO ARTIST_SALES
FROM Artist
GROUP BY CD_NO

这应该可行,它将创建一个名为 ARTIST_SALES 的表(您可以更改此表),您也可以考虑在第二个表中添加艺术家 ID,这样您就可以选择每个艺术家的汇总销售额。

编辑:

不知道你用的是mysql,不支持select into,你应该先新建一个表,例如

CREATE TABLE Artist_Sales (
  CD_NO INT NOT NULL,
  SALES_COUNT INT NOT NULL
);

然后执行插入,例如:

INSERT INTO Artis_Sales (CD_NO,SALES_COUNT)
SELECT CD_NO, COUNT(purchasedate) 
FROM Artist
GROUP BY CD_NO

祝你好运

于 2012-11-30T15:32:28.630 回答
0

你能不能这样做:

SELECT CD_NO, MAX(PURCHASEDATE) 从 ARTIST GROUP BY CD_NO

于 2012-11-30T15:34:25.790 回答
0
SELECT CD_NO, COUNT(purchasedate) AS most_sales
INTO [NEW TABLE NAME] 
FROM Artist
GROUP BY CD_NO

ALL YOU HVAE 做它放入语句,结果将进入一个基本级别的新表

于 2012-11-30T15:27:03.743 回答