[前][次][番号順一覧][スレッド一覧]

mysql:14832

From: Shuji Watanabe <Shuji Watanabe <shuji.w6e@xxxxxxxxxx>>
Date: Thu, 7 May 2009 11:50:21 +0900
Subject: [mysql 14832] Re: テーブルごとの合計を求めるには

渡辺です。
なんでSQLでやらなければいけないか、疑問ですが・・・

select m.name, sum(m.uri), sum(m.nyu)
from
(
(select name, kingaku as uri, 0 as nyu from u)
union
(select name, 0 as uri, kingaku as nyu from n)
) m
group by m.name

こんな感じで可能は可能だと思います。
#動作は未確認です
普通は別々に習得してプログラムでマージするなりする方が単純で解りやすく、バグも少ないしし、仕様変更にも強いと思いますよ。

2009/05/07 11:35 柴垣 <akiro@xxxxxxxxxx>:
> 柴垣といいます。いつも勉強させていただいています。
> sqlの書き方の投稿が続いているので、それに乗っかって・・
>
> 以下のような3つのテーブルがあったときに
>
> 名前テーブル:T
> Name
> A
> B
>
> 売上テーブル:U
> Name   Kingaku
> A       1000
> A       2000
> B       2000
> B       3000
> B       1000
>
> 入金テーブル:N
> Name   Kingaku
> A       1000
> A       1000
> A       2000
> B       3000
> B       4000
>
> 次のようなテーブルごとの集計を一つのクエリーで作る方法は
> あるのでしょうか。
>
> 求めたい結果セット
> Name  UriageGokei  NyukinGokei
> A           3000          4000
> B           6000          7000
>
>
> ※ 例えば次のように書くと、重複して合計を取ってしまいます。
> select T.Name,
> sum(U.Kingaku) as UriageGokei,
> sum(N.Kingaku) as NyukinGokei
> from T
> left join U on T.Name=U.Name
> left join N on T.Name=N.Name
> group by T.Name;
>
>
> _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
>
>  柴垣  akiro@xxxxxxxxxx
>
> _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
>
>
>
>



-- 
================================
Shuji Watanabe (skypeId: shuji.w6e)
  Blog:
    http://d.hatena.ne.jp/shuji_w6e/
  Labo:
    http://www.deathmarch.jp/
  Community:
    http://www.sapporo-java.org/

[前][次][番号順一覧][スレッド一覧]

     14831 2009-05-07 11:35 [柴垣 <akiro@xxxxxxxx] テーブルごとの合計を求めるには          
->   14832 2009-05-07 11:50 ┣[Shuji Watanabe <shuj]                                       
     14833 2009-05-07 12:21 ┗[HIRATSUKA Sadao <hir]                                       
     14835 2009-05-08 00:42  ┗[柴垣 <akiro@xxxxxxxx]                                     
     14836 2009-05-08 02:00   ┗[ユウシステム 糸瀬 <i]                                   
     14837 2009-05-08 09:42    ┗[柴垣 <akiro@xxxxxxxx]                                 
     14838 2009-05-08 10:00     ┗[Shuji Watanabe <shuj]                               
     14839 2009-05-08 10:59      ┗[ユウシステム 糸瀬 <i]