以下のテーブル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(エクセル)
-
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
Accessクエリでの、LIKE条件
その他(データベース)
-
-
4
access2003 クエリSQL文について
その他(プログラミング・Web制作)
-
5
Access フォームのテキストボックスに半角英字のみで入力する設定は
Access(アクセス)
-
6
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
7
固定値を含む結合と複数テーブルの結合について
Oracle
-
8
Access VBAから使用したExcelプロセスを閉じる方法について
Visual Basic(VBA)
-
9
「パラメータが少なすぎます。3を指定してください。」って???
Access(アクセス)
-
10
ACCESSのフォーム、開くんですが、見えないようにするには
Access(アクセス)
-
11
ACCESS クエリで、グループ化したものをカウントしたい
その他(データベース)
-
12
ACCESS で 項目名を出力せずにエクスポートしたい
その他(データベース)
-
13
SQL 外部結合
その他(データベース)
-
14
Accessを開くと「排他モードじゃないので変更しても保存できない」との旨の表示が出てしまう。
Access(アクセス)
-
15
Access]2つのテーブルを比較してフィールドの一部が一致したデータを抽出
Access(アクセス)
-
16
Access2003 クエリで、空の列は作れますか?
Access(アクセス)
-
17
どこにもフォーカスを当てたくない
Access(アクセス)
-
18
Accessのクエリで2つのフィールドが同条件の場合に結合したい
その他(Microsoft Office)
-
19
アクセス 壊れた? 「ファイルが見つかりません」
Access(アクセス)
-
20
mdbファイル フォームを開くと強制終了されます。
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLです教えてくださいお願いし...
-
オーダーの覚え方について
-
L2SWはARPテーブルを持っている?
-
アクセスのリンクテーブル一覧...
-
男性と2人で飲食店に行きテーブ...
-
外部キーだけのテーブル(主キ...
-
テーブルリンク リンク元を知...
-
データ型の変更
-
クエリを教えてください select...
-
更新されたテーブルを表示したい
-
バイキングのトレーの形
-
Accessで最小値と最大値を一度...
-
SYBASE12.5の行ロック
-
飲み会で、座敷orテーブルどち...
-
ACCESS での LEFT JOIN 時の WH...
-
ACCESS テーブルのRENAME
-
MySQLについての質問です!!
-
アクセスでテーブルのデザイン...
-
見えないテーブル(phpMyAdmin)
-
テーブル名の前のドットの意味
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
L2SWはARPテーブルを持っている?
-
外部キーだけのテーブル(主キ...
-
男性と2人で飲食店に行きテーブ...
-
テーブルリンク リンク元を知...
-
会社の飲み会の幹事になり、座...
-
「テーブルに座って……」という...
-
アクセスのリンクテーブル一覧...
-
ターンテーブルの、電子レンジ...
-
飲み会で、座敷orテーブルどち...
-
【PHP】SQL文のSUM関数で出力し...
-
テーブル:生徒名簿 生徒名簿の...
-
まるいテーブル 円い 丸い 漢字...
-
1対1のリレーション(主キー同...
-
論理名とコメント構文(?)について
-
面接のときテーブルが正面に。...
-
一致するデータのみ削除したい
-
複雑なSQL文について
-
SQL構文です 画像のようにした...
-
件数の多い順にselect
-
お金持ちのテーブル
おすすめ情報