0

ここに画像の説明を入力

のようなテーブルがありますfigure (1)。10000 は、すべての製品の 12 か月分の moneyStock です。5000 は、製品 384 の 12 か月分のマネーストックですfigure (3)。どうやってするの?図(2)は私が試したものです:

SELECT siire_code, zaiko_code, month_str, money
FROM test
WHERE siire_code = 384 OR (siire_code = 560 AND zaiko_code = 384)
GROUP BY month_str, zaiko_code

注:560すべての製品のすべての月の moneyStock の ID です。

更新:テーブル構造が追加されました。

ここに画像の説明を入力

4

3 に答える 3

1

これはどう:

SELECT month_str, sum(one_t.money), sum(other_t.money), sum(all_t.money)
FROM   test
       LEFT JOIN test one_t
         ON test.siire_code = one_t.siire_code
       LEFT JOIN test other_t
         ON test.siire_code = other_t.zaiko_code
       LEFT JOIN test all_t
         ON test.siire_code = all_t.siire_code
            OR test.siire_coe = one_t.zaiko_code
WHERE  siire_code = 384
       OR (siire_code = 560
           AND zaiko_code = 384)
GROUP  BY month_str
于 2013-07-05T06:15:18.927 に答える