SQL

解決


雪のにおい  2007-11-19 19:18:32  No: 28556

PARADOXのテーブルをSQLで抽出集計したいです。
Delphi5を使用しています。

得意先マスタ
A ,A社
B ,B社
C ,C社

受注データ
1/1,A,10
1/2,A,10
1/3,A,10
1/4,B,20

これを(1/1 から 1/3)で抽出し、集計したいのですが、

A,A社,30
B,B社,0
C,C社,0

という結果がほしいのですが、
どうしても

A,A社,30

としかでません。

SELECT 得意先.得意先CD, 得意先.得意先名称, 
(SELECT SUM(受注.数量) FROM "受注.DB" 受注
 WHERE 受注.得意先CD = 得意先.得意先CD
 AND 受注.受注日 BETWEEN '10/21/2007' AND '11/21/2007') 合計 
FROM "得意先.DB" 得意先

というコードを書きましたが、だめでした。

知恵をお貸しください。
説明不備などもございましたらご指摘ください。
よろしくお願いいたします。


HOta  2007-11-19 19:36:49  No: 28557

SELECT 受注.得意先CD, SUM(受注.数量) FROM "受注.DB" 受注
 WHERE 受注.受注日 BETWEEN '10/21/2007' AND '11/21/2007'
 GROUP BY 受注.得意先CD
を、TableSum.SQLと名前をつけて保存します。

SELECT 得意先.得意先CD, 得意先.得意先名称, SUM(受注.数量)
FROM "得意先マスタ.DB" 得意先
  LEFT OUTER JOIN "TableSum.SQL" 受注
  ON (得意先.得意先CD=受注.得意先CD)
でどうでしょう。


雪のにおい  2007-11-19 19:53:53  No: 28558

HOta 様!!
なりました!!
ありがとうございました!!


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加