0

販売情報を含む mysql テーブルがあります: 販売者、製品、販売日。

各販売者が月ごとに表示した商品の合計を示すテーブルを生成するクエリを作成するにはどうすればよいですか?

これは、SellerName と 7 月の総売上を含むテーブルを作成するために使用するクエリです。

select SellerName, count(*) as july 
from onlineDATA
where ReportMonth = 201207
GROUP BY SellerName
ORDER BY july DESC
LIMIT 0,30

これを修正して、各月の売上合計を追加するにはどうすればよいですか?

次のような出力を探しています。

    SellerName   | Jun  | Jul  | Aug  | YTD
    John Doe     | 30   |  25  |  30  | 85

おまけの質問 - 月数がユーザー入力 (1 から 12 の範囲) になる場合、PHP でこれをどのようにコーディングしますか?

ありがとう

4

1 に答える 1

0

次のように、列を個別に定義する必要があると思います。

SELECT 

SellerName,     
SUM(IF(ReportMonth = 201206, 1.0)) AS Jun,
SUM(IF(ReportMonth = 201207, 1.0)) AS Jul,
SUM(IF(ReportMonth = 201208, 1.0)) AS Aug,
COUNT(*) AS YTD

FROM onlineDATA

GROUP BY SellerName 
ORDER BY SellerName DESC LIMIT 30;
于 2013-02-19T22:04:40.937 に答える