以下のテーブル1、テーブル2で、
テーブル2のDATE2が、テーブル1のDATE以前になっている
VOL2を集計したいと考えています。
テーブル1
CODE DATE VOL
---------------------------
a 20080601 100
a 20080602 100
a 20080603 100
テーブル2
CODE DATE2 VOL2
------------------------
a 20080602 50
a 20080603 50
希望する結果のイメージ
CODE DATE VOL VOL2
---------------------------------------
a 20080601 100 0
a 20080602 100 50
a 20080603 100 100
以下のSQLを考えましたが、DATE以前のDATE2を持たない場合、
テーブル1の行が表示されませんでした。
SQL文
SELECT t1.CODE, t1.DATE, t1.VOL
, Sum(t2.VOL2) AS VOL2の合計
FROM テーブル1 as t LEFT JOIN テーブル2 as t2
ON t1.CODE = t2.CODE
WHERE t1.DATE >= t2.DATE2
GROUP BY t1.CODE, t1.DATE, t1.VOL
結果
CODE CDATE VOL VOL2の合計
--------------------------------------
a 20080602 100 50
a 20080603 100 100
SQL文中にある
WHERE t1.DATE >= t2.DATE2
が原因しているのではと考えています。
しかし、どのようにしたらよいのかがわかりません。
どなたか、ご教授をお願いします。
No.2ベストアンサー
- 回答日時:
SELECT テーブル1.CODE, テーブル1.DATE, テーブル1.VOL,
Sum(IIf([DATE]>=[DATE2],[VOL2],0)) AS VOL2の合計
FROM テーブル1 LEFT JOIN テーブル2
ON テーブル1.CODE = テーブル2.CODE
GROUP BY テーブル1.CODE, テーブル1.DATE, テーブル1.VOL;
No.1
- 回答日時:
SELECT t1.CODE, t1.DATE, t1.VOL
, Sum(t2.VOL2) AS VOL2の合計
FROM テーブル1 as t1 LEFT JOIN テーブル2 as t2
ON t1.CODE = t2.CODE AND t1.DATE = t2.DATE2
GROUP BY t1.CODE, t1.DATE, t1.VOL
でどうでしょうか
実行したところ結果が以下のようになり
上手くいきませんでした。
CODE DATE VOL VOL2の合計
-----------------------------------------
a 20080601 100
a 20080602 100 50
a 20080603 100 50
No.2の方の回答にて解決いたしました。
回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- MySQL MYSQL エラー 2 2022/10/18 11:37
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- PHP DBのハッシュ化したパスワードをpassword_verifyで戻し照合したのですが上手く行きません 2 2023/02/06 13:24
- Oracle 下記のsqlで取得されるレコード以外を取得する方法ありますでしょうか。 SELECT B.番号, B 2 2022/04/20 23:21
- Oracle SQL update方法 2 2022/06/22 14:07
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- JavaScript javascriptでテーブルに追加した項目のid追加してローカルストレージを操作したい 5 2023/01/01 15:52
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
【Access】外部結合を行う前に抽出条件をつけたいのですが。。。
Excel(エクセル)
-
Accessクエリでの、LIKE条件
その他(データベース)
-
Access フォームのテキストボックスに半角英字のみで入力する設定は
Access(アクセス)
-
-
4
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
5
Access VBAから使用したExcelプロセスを閉じる方法について
Visual Basic(VBA)
-
6
アクセスのレポートに、フォームで算出した数字を表示させたい
Access(アクセス)
-
7
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
8
Access クエリで変数を参照するとき
Visual Basic(VBA)
-
9
2つのテーブルをLIKE演算子のように結合させたい
その他(データベース)
-
10
VBAのAccessでDATE型のINSERT
その他(データベース)
-
11
「#エラー」の回避
Access(アクセス)
-
12
ASP+アクセスでのSQLコメントについて
Microsoft ASP
-
13
Access]2つのテーブルを比較してフィールドの一部が一致したデータを抽出
Access(アクセス)
-
14
ACCESSのフォーム、開くんですが、見えないようにするには
Access(アクセス)
-
15
Accessを開くと「排他モードじゃないので変更しても保存できない」との旨の表示が出てしまう。
Access(アクセス)
-
16
Access2003 クエリで、空の列は作れますか?
Access(アクセス)
-
17
Accessのクエリで2つのフィールドが同条件の場合に結合したい
その他(Microsoft Office)
-
18
固定値を含む結合と複数テーブルの結合について
Oracle
-
19
access2003 クエリSQL文について
その他(プログラミング・Web制作)
-
20
YES/NO型の値
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
面接のときテーブルが正面に。...
-
テーブルリンク リンク元を知...
-
取数計算
-
L2SWはARPテーブルを持っている?
-
下の画像はSQLの4大命令の性質...
-
一致するデータのみ削除したい
-
1対1のリレーション(主キー同...
-
まるいテーブル 円い 丸い 漢字...
-
SQL 現在のレコードより古い番...
-
「テーブルに座って……」という...
-
飲み会で、座敷orテーブルどち...
-
テーブルの白く剥がれてるところに
-
アクセスのリンクテーブル一覧...
-
お金持ちのテーブル
-
Accessのリンクテーブルマネー...
-
MACアドレス見えない
-
立体の重心の求め方について
-
会社の飲み会の幹事になり、座...
-
UTF8のテーブルをODBCドライバ...
-
複雑なSQL文について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
会社の飲み会の幹事になり、座...
-
テーブルリンク リンク元を知...
-
L2SWはARPテーブルを持っている?
-
テーブルの白く剥がれてるところに
-
飲み会で、座敷orテーブルどち...
-
まるいテーブル 円い 丸い 漢字...
-
1つのテーブルに同じデータを参...
-
このテーブルで
-
置き配された食べ物を袋からど...
-
外部キーだけのテーブル(主キ...
-
【PHP】SQL文のSUM関数で出力し...
-
「テーブルに座って……」という...
-
男性と2人で飲食店に行きテーブ...
-
アクセスのリンクテーブル一覧...
-
一致するデータのみ削除したい
-
論理名とコメント構文(?)について
-
ACCESSで3ファイルを結合して、...
-
MySQLで複数テーブルを作成する
-
複数テーブルにわたるCOUNT
-
SQL 外部結合
おすすめ情報