複数のテーブルを使用する時は・・・・
SQLについて教えてくださいぃ~使用しているのは、”Oracle SQL+”です自分はある工場のへっぽこシステム管理者ですが、お上よりSQLを駆使して下記の条件の表を作ってと頼まれました...
<生産>,<不良>,<不良内容>テーブルを使用して表を作りたいのですが・・
<生産>テーブル
日付 |生産工場No.|機械No. | 商品名 | 生産数 |
2008/3/29 | 100 | A | チョコ | 300 |
2008/3/29 | 100 | A | チョコ | 450 |
2008/3/29 | 100 | B | 板チョコ | 600 |
<不良>テーブル
日付 | 生産工場No. | 機械No. | 商品名 | 不良モード |停止時間(分)|
2008/3/29 | 100 | A | チョコ | カケ | 4 |
2008/3/29 | 100 | A | チョコ | カケ | 8 |
2008/3/29 | 100 | A | チョコ | 曲げ | 10 |
2008/3/29 | 100 | A | チョコ | 汚れ | 5 |
2008/3/29 | 100 | B | 板チョコ | カケ | 4 |
2008/3/29 | 100 | B | 板チョコ | カケ | 8 |
2008/3/29 | 100 | B | 板チョコ | キズ | 8 |
<不良モード>テーブル
生産工場 | 不良モード | マシン要因 | 人的要因 |
100 | カケ | ☆ | |
100 | 曲げ | | ☆ |
100 | 汚れ | | ☆ |
100 | キズ | | ☆ |
100 | 溶け | | ☆ |
100 | 割れ | ☆ | |
100 | ヒビ | ☆ | |
上記3つのテーブルを使って下記の表のように集計したいのです。
↓↓↓
機械No. | 商品名 | 生産数 | カケ停止時間(分)| 人的要因での停止時間(分)|
A | チョコ | 750 | 12 | 15 |
B | 板チョコ | 600 | 15 | 8 |
【条件】
(1) 製造工場が’100’
(2) 日付が’2008/03/29’
各テーブルにおいてのクエリは出来たのですが、結合すると集計が・・・・・・
<生産>にて、
select 機械No.,商品名、sum(生産数) from 生産
where 製造工場='100' and 日付='2008/03/29'
group by 機械No.,商品名 order by 機械No.,商品名
<不良>にて、
select 機械No.,商品名、sum(停止時間) from 不良
where 製造工場='100' and 日付='2008/03/29 and 不良モード='カケ'
group by 機械No.,商品名 order by 機械No.,商品名
<不良> <不良内容>にて、
select 機械No.,商品名、sum(停止時間) from 不良,不良モード
where 製造工場='100' and 日付='2008/03/29 and 不良モード<>'カケ' and 人的要因='☆'
group by 機械No.,商品名 order by 機械No.,商品名
この3つのテーブルを使って、一覧が一度に出来れば助かるのですが、せめて
<生産>,<不良>のテーブルで機械No.,品名,生産数,カケ停止時間(分)までは出力したのです。
まだ未熟者ですので、皆様の御力を借りれれば幸いです。お願いします
※図の方が判りづらくて申し訳ございません。
お礼
リンクまで貼って下さり、感謝しています。 すぐに回答して下さって、本当にうれしかったです。 この度は、どうも有難う御座いました♪