
教えて下さい。
SQLに関してです。
ある2つのテーブルの集計(数量の合算)をSQLで行いたいと考えています。
そこで、UNION ALL を使い集計させる事ができましたが、その中で、1つのテーブルに
条件を加えたいと考えています。
つまり、副問い合わせのような形にできないかと考えています。
《テーブル》
T_在庫日次
品目番号
場所コード
数量
処理区分
T_在庫月次
品目番号
場所コード
数量
《現状のSQL》
Select 場所コード,品目番号, SUM(数量) AS 数量 From ( Select 場所コード,品目番号, 数量 From T_在庫日次
UNION ALL Select 場所コード,品目番号, 数量 From T_在庫月次 ) Group By 場所コード,品目番号
上記のSQLに対し、T_在庫日次 の処理区分が ‘10’ のデータに対するT_在庫日次とT_在庫月次の数量の
合計を求めたいと考えています。
SQLの記述で計算までして取得する事はできないでしょうか???
教えて頂ければ幸いです。
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
失礼しました、「T_在庫日次」のテーブル名の右です。
(質問の1行目が2行で表示されていたので2行目のと書いてしまいました)nharasawa様、何度もご回答ありがとうございます!
教えて頂いたように記述しましたが、やはり処理区分='10'だけの合算値は取得できず、、、
何か間違っているでしょうか???
Select 場所コード,品目番号, SUM(数量) AS 数量 From ( Select 場所コード,品目番号, 数量 From T_在庫日次 WHERE 処理区分 = '10'
UNION ALL Select 場所コード,品目番号, 数量 From T_在庫月次 ) Group By 場所コード,品目番号
No.2
- 回答日時:
>T_在庫日次の方にしかデータがなくとも出力したい場合にはどのように変更したら
>良いでしょうか、、、
《現状のSQL》の2行目のテーブルの後に「WHERE 処理区分='10'」を追加すれば出来ます。
nharasawa様、ご回答ありがとうございます。
以下のような形で間違っていないでしょうか???
Select 場所コード,品目番号, SUM(数量) AS 数量 From ( Select 場所コード,品目番号, 数量 From T_在庫日次
UNION ALL Select 場所コード,品目番号, 数量 From T_在庫月次 WHERE 処理区分='10') Group By 場所コード,品目番号
現状のSQLの2行目ですが、T_在庫月次の場合、"処理区分"という項目がなく、
条件を追加するとエラーとなってしまいます、、、
私の認識が誤っているのでしょうか、、、
もう少しだけ教えて頂ければ幸いです。
よろしくお願いします。
No.1
- 回答日時:
SELECT 日次.場所コード,日次.品目番号,数量合計+数量 FROM
(SELECT 場所コード,品目番号,SUM(数量)AS 数量合計
FROM T_在庫日次 WHERE 処理区分=10
GROUP BY 場所コード,品目番号) 日次
INNER JOIN T_在庫月次 月次 ON
日次.場所コード=月次.場所コード
AND 日次.品目番号=月次.品目番号
ORDER BY 1,2
でどうでしょうか。
nharasawa様、ご回答ありがとうございます。
これに関して、もう1点だけ教えて下さい。
教えて頂いたSQLでは場所コード、品目番号が等しい時に出力されるかと
思われます。
T_在庫日次の方にしかデータがなくとも出力したい場合にはどのように変更したら
良いでしょうか、、、
何度も大変申し訳ありません。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
棒読みちゃんが起動できないの...
-
子供向けプログラミングのスク...
-
osqleditについて
-
オラクル12C_SQLPlusで実行す...
-
sqlで質問です。 Aテーブルは店...
-
SQLの中上級者へのレベルアップ...
-
SELECTによる表の変換方法を教...
-
開発対象となるアプリケーショ...
-
質問です。 下記のテーブルとデ...
-
Oracleですがsqlで質問です。 ...
-
sqlで質問です。 Aテーブルの登...
-
sqlで質問です。 Aテーブルの情...
-
SQLの書き方について
-
SQLについて教えて下さい。 主...
-
sqlで質問です。 idを元にidに...
-
oracleで 10,20, 30, というデ...
-
索引作成について
-
googleプレイの履歴で取得とイ...
-
sql(oracle)で質問です。 テ...
-
オラクルゴールドについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessに2つのテーブルを結合...
-
ORACLEで2つのテーブルを同時に...
-
CASE文の集計について
-
2つのテーブルの合算値に関して
-
orace 変更表エラーを回避する...
-
SQLを考えてます。
-
Oracleでの文字列連結サイズの上限
-
GROUP BYを行った後に結合した...
-
OracleのSQL*PLUSで、デー...
-
ADO VBA 実行時エラー3021
-
決定性有限オートマトン
-
Accessで別テーブルの値をフォ...
-
select句副問い合わせ 値の個...
-
実績累計の求め方と意味を教え...
-
select insertで複数テーブルか...
-
差し込み印刷のレコード数について
-
Access終了時の最適化が失敗?
-
レコードが存在しなかった場合
-
最新の日付とその金額をクエリ...
-
Excelでセルの書式設定を使用し...
おすすめ情報