-1

私は次のコードを持っています:

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

CDの販売ごとに購入済みのエントリがあるため、これにより各CDの販売額が返されます。ただし、これから、各CD_NOの売上が最も多かった日付を確認し、その日のmost_salesの日付を表示する代わりに数値を表示したいと思います。したがって、購入日の入力を特定のCDと照合し、それらをカウントアップして、特定のpurchase_dateでの購入の最大数を見つけます。

たとえば、次の入力を有効にします。

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 [NEW TABLE NAME] 
FROM Artist
GROUP BY CD_NO

それを行うには、into ステートメントを使用するだけで、結果は基本レベルの新しいテーブルに移動します

于 2012-11-30T15:27:03.743 に答える
0
SELECT CD_NO, COUNT(purchasedate) AS most_sales
INTO ARTIST_SALES
FROM Artist
GROUP BY CD_NO

これでうまくいくはずです。ARTIST_SALES というテーブルが作成されます (これは変更できます)。また、2 番目のテーブルにアーティスト 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) from ARTIST GROUP BY CD_NO

于 2012-11-30T15:34:25.790 に答える